From 087d91602445a14ffc5b137132513f782a25fbc7 Mon Sep 17 00:00:00 2001
From: Dinesh Matta <dineshdm7@gmail.com>
Date: Fri, 18 Jan 2013 23:22:54 +0530
Subject: [PATCH 1/2] Configured for deployment to Heroku

---
 Gemfile                       |  14 +++-
 Gemfile.lock                  | 151 +++++++++++++++++-----------------
 app/models/user.rb            |  19 ++++-
 config/initializers/resque.rb |   2 +-
 config/mongoid.yml            | 112 ++++++++++++++++++++++---
 public/assets/manifest.yml    | 144 +++++++++++++++-----------------
 6 files changed, 275 insertions(+), 167 deletions(-)

diff --git a/Gemfile b/Gemfile
index 92b1ed1..f7605a1 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,13 +1,13 @@
 source 'http://rubygems.org'
 
-gem 'rails', '3.1.0'
+gem 'rails', '3.1.10'
 gem 'rake', '0.8.7'
 gem 'json', '1.4.6'
 gem 'jquery-rails'
 
 # Database
 gem "mongo"
-gem "mongoid"
+gem "mongoid", "2.5.1"
 gem "bson_ext"
 
 gem "kaminari" # for paging
@@ -22,6 +22,8 @@ end
 gem "devise"
 gem "cancan"
 
+gem "devise-encryptable"
+
 # Server
 gem "powify", '0.8.5'
 gem "foreman"
@@ -57,7 +59,8 @@ gem "resque-status"
 gem "resque-scheduler"
 
 # Game mechanics
-gem "badgeable"
+gem "badgeable", "0.4.0"
+
 
 # Search
 gem "sunspot", "1.2.1"
@@ -81,13 +84,18 @@ gem "airbrake"
 # Email
 gem "sendgrid"
 
+gem "crack"
+
 # Gems used only for assets and not required
 # in production environments by default.
 group :assets do
+  gem 'sass', "3.2.0.alpha.244"
   gem 'sass-rails', "  ~> 3.1.0"
   gem 'coffee-rails', "~> 3.1.0"
   gem 'uglifier'
   gem 'bourbon'
+  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
+  gem 'therubyracer', :platforms => :ruby
 end
 
 group :test do
diff --git a/Gemfile.lock b/Gemfile.lock
index 8b7ad74..2a43572 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,53 +1,50 @@
 GEM
   remote: http://rubygems.org/
   specs:
-    actionmailer (3.1.0)
-      actionpack (= 3.1.0)
-      mail (~> 2.3.0)
-    actionpack (3.1.0)
-      activemodel (= 3.1.0)
-      activesupport (= 3.1.0)
+    actionmailer (3.1.10)
+      actionpack (= 3.1.10)
+      mail (~> 2.3.3)
+    actionpack (3.1.10)
+      activemodel (= 3.1.10)
+      activesupport (= 3.1.10)
       builder (~> 3.0.0)
       erubis (~> 2.7.0)
       i18n (~> 0.6)
-      rack (~> 1.3.2)
-      rack-cache (~> 1.0.3)
+      rack (~> 1.3.6)
+      rack-cache (~> 1.2)
       rack-mount (~> 0.8.2)
       rack-test (~> 0.6.1)
-      sprockets (~> 2.0.0)
-    activemodel (3.1.0)
-      activesupport (= 3.1.0)
-      bcrypt-ruby (~> 3.0.0)
+      sprockets (~> 2.0.4)
+    activemodel (3.1.10)
+      activesupport (= 3.1.10)
       builder (~> 3.0.0)
       i18n (~> 0.6)
-    activerecord (3.1.0)
-      activemodel (= 3.1.0)
-      activesupport (= 3.1.0)
-      arel (~> 2.2.1)
+    activerecord (3.1.10)
+      activemodel (= 3.1.10)
+      activesupport (= 3.1.10)
+      arel (~> 2.2.3)
       tzinfo (~> 0.3.29)
-    activeresource (3.1.0)
-      activemodel (= 3.1.0)
-      activesupport (= 3.1.0)
-    activesupport (3.1.0)
-      multi_json (~> 1.0)
+    activeresource (3.1.10)
+      activemodel (= 3.1.10)
+      activesupport (= 3.1.10)
+    activesupport (3.1.10)
+      multi_json (>= 1.0, < 1.3)
     addressable (2.3.2)
     airbrake (3.1.6)
       builder
       girl_friday
     arel (2.2.3)
-    badgeable (0.5.1)
+    badgeable (0.4.0)
     bcrypt-ruby (3.0.1)
     bitbucket_api (0.0.1)
-    bourbon (3.0.1)
-      sass (>= 3.2.0)
-      thor
-    bson (1.8.0)
-      activesupport
-    bson_ext (1.8.0)
-      bson (~> 1.8.0)
+    bourbon (2.1.1)
+      sass (>= 3.1)
+    bson (1.8.2)
+    bson_ext (1.8.2)
+      bson (~> 1.8.2)
     builder (3.0.4)
     cancan (1.6.8)
-    capybara (2.0.1)
+    capybara (2.0.2)
       mime-types (>= 1.16)
       nokogiri (>= 1.3.3)
       rack (>= 1.0.0)
@@ -68,7 +65,8 @@ GEM
       coffee-script-source
       execjs
     coffee-script-source (1.4.0)
-    connection_pool (0.9.3)
+    connection_pool (1.0.0)
+    crack (0.3.2)
     css3buttons (1.0.1)
       actionpack (>= 3.0.0)
     cucumber (1.0.3)
@@ -83,11 +81,13 @@ GEM
       nokogiri (>= 1.4.6)
     daemons (1.1.9)
     database_cleaner (0.9.1)
-    devise (2.1.2)
+    devise (2.2.2)
       bcrypt-ruby (~> 3.0)
       orm_adapter (~> 0.1)
       railties (~> 3.1)
       warden (~> 1.2.1)
+    devise-encryptable (0.1.1)
+      devise (>= 2.1.0.rc)
     diff-lcs (1.1.3)
     erubis (2.7.0)
     escape (0.0.4)
@@ -104,7 +104,7 @@ GEM
     fakeweb (1.3.0)
     faraday (0.8.4)
       multipart-post (~> 1.1)
-    ffi (1.2.0)
+    ffi (1.3.1)
     fog (0.11.0)
       builder
       excon (~> 0.6.5)
@@ -115,7 +115,7 @@ GEM
       net-ssh (~> 2.1.4)
       nokogiri (~> 1.5.0)
       ruby-hmac
-    foreman (0.60.2)
+    foreman (0.61.0)
       thor (>= 0.13.6)
     formatador (0.2.4)
     formtastic (1.2.4)
@@ -126,15 +126,15 @@ GEM
       multi_json
     gherkin (2.4.21)
       json (>= 1.4.6)
-    girl_friday (0.11.1)
-      connection_pool (~> 0.9.0)
+    girl_friday (0.11.2)
+      connection_pool (~> 1.0)
       rubinius-actor
     gravtastic (3.2.6)
     haml (3.1.7)
     has_permalink (0.1.4)
     hashie (1.2.0)
     hike (1.2.1)
-    httparty (0.9.0)
+    httparty (0.10.0)
       multi_json (~> 1.0)
       multi_xml
     i18n (0.6.1)
@@ -147,6 +147,7 @@ GEM
       activesupport (>= 3.0.0)
     launchy (2.1.2)
       addressable (~> 2.3)
+    libv8 (3.11.8.13)
     libwebsocket (0.1.7.1)
       addressable
       websocket
@@ -160,23 +161,20 @@ GEM
       treetop (~> 1.4.8)
     mime-types (1.19)
     mocha (0.9.12)
-    mongo (1.8.0)
-      bson (~> 1.8.0)
-    mongoid (3.0.15)
+    mongo (1.8.2)
+      bson (~> 1.8.2)
+    mongoid (2.5.1)
       activemodel (~> 3.1)
-      moped (~> 1.1)
-      origin (~> 1.0)
+      mongo (~> 1.7)
       tzinfo (~> 0.3.22)
-    moped (1.3.1)
     multi_json (1.0.4)
-    multi_xml (0.5.1)
+    multi_xml (0.5.2)
     multipart-post (1.1.5)
     net-scp (1.0.4)
       net-ssh (>= 1.99.1)
     net-ssh (2.1.4)
     nokogiri (1.5.6)
     oauth (0.4.7)
-    origin (1.0.11)
     orm_adapter (0.4.0)
     pg (0.14.1)
     polyglot (0.3.3)
@@ -185,8 +183,8 @@ GEM
     pr_geohash (1.0.0)
     rabl (0.3.0)
       multi_json (~> 1.0.3)
-    rack (1.3.6)
-    rack-cache (1.0.3)
+    rack (1.3.9)
+    rack-cache (1.2)
       rack (>= 0.4)
     rack-mount (0.8.3)
       rack (>= 1.0.0)
@@ -196,17 +194,17 @@ GEM
       rack
     rack-test (0.6.2)
       rack (>= 1.0)
-    rails (3.1.0)
-      actionmailer (= 3.1.0)
-      actionpack (= 3.1.0)
-      activerecord (= 3.1.0)
-      activeresource (= 3.1.0)
-      activesupport (= 3.1.0)
+    rails (3.1.10)
+      actionmailer (= 3.1.10)
+      actionpack (= 3.1.10)
+      activerecord (= 3.1.10)
+      activeresource (= 3.1.10)
+      activesupport (= 3.1.10)
       bundler (~> 1.0)
-      railties (= 3.1.0)
-    railties (3.1.0)
-      actionpack (= 3.1.0)
-      activesupport (= 3.1.0)
+      railties (= 3.1.10)
+    railties (3.1.10)
+      actionpack (= 3.1.10)
+      activesupport (= 3.1.10)
       rack-ssl (~> 1.3.2)
       rake (>= 0.8.7)
       rdoc (~> 3.4)
@@ -217,6 +215,7 @@ GEM
     redis (3.0.2)
     redis-namespace (1.2.1)
       redis (~> 3.0.0)
+    ref (1.0.2)
     resque (1.23.0)
       multi_json (~> 1.0)
       redis-namespace (~> 1.0)
@@ -234,8 +233,8 @@ GEM
     rspec-core (2.12.2)
     rspec-expectations (2.12.1)
       diff-lcs (~> 1.1.3)
-    rspec-mocks (2.12.0)
-    rspec-rails (2.12.0)
+    rspec-mocks (2.12.1)
+    rspec-rails (2.12.2)
       actionpack (>= 3.0)
       activesupport (>= 3.0)
       railties (>= 3.0)
@@ -249,8 +248,8 @@ GEM
     rubyzip (0.9.9)
     rufus-scheduler (2.0.17)
       tzinfo (>= 0.3.23)
-    sass (3.2.3)
-    sass-rails (3.1.6)
+    sass (3.2.0.alpha.244)
+    sass-rails (3.1.7)
       actionpack (~> 3.1.0)
       railties (~> 3.1.0)
       sass (>= 3.1.10)
@@ -275,7 +274,7 @@ GEM
       hike (~> 1.2)
       rack (~> 1.0)
       tilt (~> 1.1, != 1.3.0)
-    sqlite3 (1.3.6)
+    sqlite3 (1.3.7)
     sqlite3-ruby (1.3.3)
       sqlite3 (>= 1.3.3)
     stack_overflow (0.0.9)
@@ -287,6 +286,9 @@ GEM
       nokogiri
       sunspot (= 1.2.1)
     term-ansicolor (1.0.7)
+    therubyracer (0.11.3)
+      libv8 (~> 3.11.8.12)
+      ref
     thin (1.5.0)
       daemons (>= 1.0.9)
       eventmachine (>= 0.12.6)
@@ -296,25 +298,20 @@ GEM
     treetop (1.4.12)
       polyglot
       polyglot (>= 0.3.1)
-    twitter (2.2.1)
-      activesupport (>= 2.3.9, < 4)
-      activesupport (>= 2.3.9, < 4)
-      faraday (~> 0.7)
-      faraday (~> 0.7)
-      multi_json (~> 1.0)
+    twitter (4.4.4)
+      faraday (~> 0.8, < 0.10)
       multi_json (~> 1.0)
-      simple_oauth (~> 0.1)
-      simple_oauth (~> 0.1)
+      simple_oauth (~> 0.2)
     tzinfo (0.3.35)
     uglifier (1.3.0)
       execjs (>= 0.3.0)
       multi_json (~> 1.0, >= 1.0.2)
-    vcr (2.3.0)
+    vcr (2.4.0)
     vegas (0.1.11)
       rack (>= 1.0.0)
     warden (1.2.1)
       rack (>= 1.0)
-    websocket (1.0.5)
+    websocket (1.0.6)
     xpath (1.0.0)
       nokogiri (~> 1.3)
 
@@ -323,7 +320,7 @@ PLATFORMS
 
 DEPENDENCIES
   airbrake
-  badgeable
+  badgeable (= 0.4.0)
   bitbucket_api
   bourbon
   bson_ext
@@ -331,11 +328,13 @@ DEPENDENCIES
   carrierwave (= 0.5.7)
   carrierwave-mongoid (= 0.1.0)
   coffee-rails (~> 3.1.0)
+  crack
   css3buttons (= 1.0.1)
   cucumber (= 1.0.3)
   cucumber-rails (= 1.0.2)
   database_cleaner
   devise
+  devise-encryptable
   escape_utils (= 0.2.3)
   factory_girl_rails
   fakeweb
@@ -354,17 +353,18 @@ DEPENDENCIES
   linkedin
   mocha (= 0.9.12)
   mongo
-  mongoid
+  mongoid (= 2.5.1)
   pg
   powify (= 0.8.5)
   rabl (= 0.3.0)
-  rails (= 3.1.0)
+  rails (= 3.1.10)
   rake (= 0.8.7)
   resque
   resque-scheduler
   resque-status
   rmagick (= 2.13.1)
   rspec-rails
+  sass (= 3.2.0.alpha.244)
   sass-rails (~> 3.1.0)
   sendgrid
   simple-rss (= 1.2.3)
@@ -374,6 +374,7 @@ DEPENDENCIES
   stack_overflow
   sunspot (= 1.2.1)
   sunspot_rails (= 1.2.1)
+  therubyracer
   thin
   twitter
   uglifier
diff --git a/app/models/user.rb b/app/models/user.rb
index 125eaed..7c5c0af 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -5,11 +5,28 @@ class User
   # Include default devise modules. Others available are:
   # :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
   devise :database_authenticatable, :registerable,
-         :recoverable, :rememberable, :trackable, :validatable
+         :recoverable, :rememberable, :trackable, :validatable, :authentication_keys => [:username]
 
   field :username, :type => String
   field :email, :type => String
+  field :encrypted_password, :type => String
+
+  ## Recoverable
+  field :reset_password_token,   :type => String
+  field :reset_password_sent_at, :type => Time
+
+  ## Rememberable
+  field :remember_created_at, :type => Time  
+
+  ## Trackable
+  field :sign_in_count,      :type => Integer, :default => 0
+  field :current_sign_in_at, :type => Time
+  field :last_sign_in_at,    :type => Time
+  field :current_sign_in_ip, :type => String
+  field :last_sign_in_ip,    :type => String
   
+  attr_accessible :email, :password, :password_confirmation, :remember_me, :username
+
   has_one :profile
   
   scope :users_created_today, lambda { where(:created_at.lte => Time.now.end_of_day.utc, :created_at.gte => Time.now.beginning_of_day.utc) }
diff --git a/config/initializers/resque.rb b/config/initializers/resque.rb
index 37a3cdf..700cfc5 100644
--- a/config/initializers/resque.rb
+++ b/config/initializers/resque.rb
@@ -5,7 +5,7 @@
 
 uri = URI.parse(ENV["REDISTOGO_URL"])
 Resque.redis = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
-Resque::Status.expire_in = (24 * 60 * 60) # 24hrs in seconds
+Resque::Plugins::Status::Hash.expire_in = (24 * 60 * 60) # 24hrs in seconds
 
 require 'resque_scheduler'
 Resque.schedule = YAML.load_file("#{Rails.root}/config/codemav_resque_schedule.yml")
diff --git a/config/mongoid.yml b/config/mongoid.yml
index 7276a78..14da93b 100644
--- a/config/mongoid.yml
+++ b/config/mongoid.yml
@@ -1,16 +1,106 @@
 development:
-  host: localhost
-  database: codemav
+  # Configure available database sessions. (required)
+  sessions:
+    # Defines the default session. (required)
+    default:
+      # Defines the name of the default database that Mongoid can connect to.
+      # (required).
+      database: codemav_development_new
+      # Provides the hosts the default session can connect to. Must be an array
+      # of host:port pairs. (required)
+      hosts:
+        - localhost:27017
+      options:
+        # Change whether the session persists in safe mode by default.
+        # (default: false)
+        # safe: false
 
+        # Change the default consistency model to :eventual or :strong.
+        # :eventual will send reads to secondaries, :strong sends everything
+        # to master. (default: :eventual)
+        # consistency: :eventual
+
+        # How many times Moped should attempt to retry an operation after
+        # failure. (default: 30)
+        # max_retries: 30
+
+        # The time in seconds that Moped should wait before retrying an
+        # operation on failure. (default: 1)
+        # retry_interval: 1
+  # Configure Mongoid specific options. (optional)
+  options:
+    # Configuration for whether or not to allow access to fields that do
+    # not have a field definition on the model. (default: true)
+    # allow_dynamic_fields: true
+
+    # Enable the identity map, needed for eager loading. (default: false)
+    # identity_map_enabled: false
+
+    # Includes the root model name in json serialization. (default: false)
+    # include_root_in_json: false
+
+    # Include the _type field in serializaion. (default: false)
+    # include_type_for_serialization: false
+
+    # Preload all models in development, needed when models use
+    # inheritance. (default: false)
+    # preload_models: false
+
+    # Protect id and type from mass assignment. (default: true)
+    # protect_sensitive_fields: true
+
+    # Raise an error when performing a #find and the document is not found.
+    # (default: true)
+    # raise_not_found_error: true
+
+    # Raise an error when defining a scope with the same name as an
+    # existing method. (default: false)
+    # scope_overwrite_exception: false
+
+    # Skip the database version check, used when connecting to a db without
+    # admin access. (default: false)
+    # skip_version_check: false
+
+    # User Active Support's time zone in conversions. (default: true)
+    # use_activesupport_time_zone: true
+
+    # Ensure all times are UTC in the app side. (default: false)
+    # use_utc: false
 test:
-  host: localhost
-  database: codemav_test
+  sessions:
+    default:
+      database: codemav_test
+      hosts:
+        - localhost:27017
+      options:
+        consistency: :strong
+        # In the test environment we lower the retries and retry interval to
+        # low amounts for fast failures.
+        max_retries: 1
+        retry_interval: 0
+
+# development:
+#   host: localhost
+#   database: codemav
+
+# test:
+#   host: localhost
+#   database: codemav_test
 
 # set these environment variables on your prod server
-production:
-  uri: <%= ENV['MONGOHQ_URL'] %>
-  # slaves:
-  #   - host: slave1.local
-  #     port: 27018
-  #   - host: slave2.local
-  #     port: 27019
+# production:
+#   uri: <%= ENV['MONGOHQ_URL'] %>
+#   # slaves:
+#   #   - host: slave1.local
+#   #     port: 27018
+#   #   - host: slave2.local
+#   #     port: 27019
+<% if ENV['MONGOHQ_URL'] %>
+  production:   
+    sessions:
+      default:
+        uri: <%= ENV['MONGOHQ_URL'] %>
+        options:
+          skip_version_check: true
+          safe: true
+<% end %>        
\ No newline at end of file
diff --git a/public/assets/manifest.yml b/public/assets/manifest.yml
index 3444059..33f2a13 100644
--- a/public/assets/manifest.yml
+++ b/public/assets/manifest.yml
@@ -1,77 +1,69 @@
 ---
-ajax-loader.gif: ajax-loader-70624225be5378869c5a75085fd0340f.gif
-autodiscover/bitbucket.png: autodiscover/bitbucket-f5163eb026eb14807bbd3c873052751e.png
-autodiscover/git_hub.png: autodiscover/git_hub-9eed4c58134c9768812ee95d1f2cc74c.png
-background.png: background-108de924f7fdead2d10f8d8282be9f74.png
-bitbucket_info_logo.png: bitbucket_info_logo-2823df083662f911b08c8dae88274249.png
-close.png: close-d3086ee1d7009023885aef4a55d80341.png
-coder_wall_info_logo.png: coder_wall_info_logo-a5a8d4d48cd02dd02604a924b66297b7.png
-default_company.png: default_company-5f3cb6cb1352288b101e8f18ed8d3abc.png
-default_talk.png: default_talk-fd2294e9dbb117ed7cb6d7713a0aa161.png
-experience.png: experience-50b59f0b13b2fa9ee9d0f359baf2d1a1.png
-git_hub_info_logo.png: git_hub_info_logo-25950de2273cedb8f7764c907984902d.png
-homepage/home_services.png: homepage/home_services-0f03cbf01a64d8cb3947288d5a2c915a.png
-icons/codemav_icon.png: icons/codemav_icon-4dd65a4057f502b3d9464cbde6e4b1ad.png
-icons/git_hub_icon.png: icons/git_hub_icon-c56c79f9aa6f21f00c3091e69e34ae36.png
-icons/github-logo.png: icons/github-logo-f16fac8479ce1885359453c465ef0bd2.png
-icons/github_followers_icon.png: icons/github_followers_icon-04fb1c95e668f25e186fefa3c7bebcb0.png
-icons/logo_twitter_withbird_1000_allblue.png: icons/logo_twitter_withbird_1000_allblue-f655a3496c209c527f56097cf31c0a1e.png
-icons/twitter_logo.acorn: icons/twitter_logo-f07d0b0dff09889c691600fefb20c0de.acorn
-icons/twitter_logo.png: icons/twitter_logo-5c32719bc9d26c915350f51a25adbf49.png
-linkedin_info_logo.png: linkedin_info_logo-2faca95e1d1a69dfdba788fcb5c2020a.png
-location_pin.png: location_pin-b9ca55b92e169f8ae87e44b453a72be4.png
-main_code_mav_icon.png: main_code_mav_icon-ea93ec3e0083ba05811b4a1de96e7352.png
-main_code_mav_logo.png: main_code_mav_logo-bd37b77787ed7636988f0c0386037e35.png
-overlay/close.png: overlay/close-d3086ee1d7009023885aef4a55d80341.png
-overlay/white.png: overlay/white-3709ef5c0ce0b65d288728579081219c.png
-silver_badge.png: silver_badge-b7dd02b749b079ca5f597c58bfea7d0f.png
-slide_share_info_logo.png: slide_share_info_logo-ae279807bbb06c44f820f5991c5f1eb4.png
-speaker_rate_find_id.png: speaker_rate_find_id-fbf2a58c53b222269052cb3a2ccb59b6.png
-speaker_rate_info_logo.png: speaker_rate_info_logo-c950dabc2f5bf96e24359ac4f53201a3.png
-stack_over_flow_info_logo.png: stack_over_flow_info_logo-b88969a6aa21a42d89f6774c57cb2158.png
-stack_overflow_find_id.png: stack_overflow_find_id-9b564ba32c2e8c0f3351ee3b15a4b574.png
-stack_overflow_points_icon.png: stack_overflow_points_icon-24e8f952dd4c134fbad08c631f5319a0.png
-syncable/bitbucket_logo.png: syncable/bitbucket_logo-227c1587113c6c1cbfd2536b0b5e6f6c.png
-syncable/coder_wall_logo.png: syncable/coder_wall_logo-725f304b6f64c971ba5834dc2340f3bc.png
-syncable/git_hub_logo.png: syncable/git_hub_logo-d4194018172ec9e57128fee7c527f6c1.png
-syncable/linkedin_logo.png: syncable/linkedin_logo-f6f3708e0eebcc5d03e1b7b225605482.png
-syncable/mini_speaker_rate_logo.png: syncable/mini_speaker_rate_logo-f1ae807058b66b38cb91d9724b134896.png
-syncable/mini_stack_overflow_logo.png: syncable/mini_stack_overflow_logo-09abf369aa0aa1087d285beb827e389b.png
-syncable/slide_share_logo.png: syncable/slide_share_logo-7948d1baaf2fa29b6f08307b5297b0cd.png
-syncable/speaker_rate_logo.png: syncable/speaker_rate_logo-77fa2ee2d68012e67b1992c285e26e11.png
-syncable/stack_over_flow_logo.png: syncable/stack_over_flow_logo-d1d7cd339d95c9f656183e1a566cad75.png
-syncable/stack_overflow_logo.png: syncable/stack_overflow_logo-d1d7cd339d95c9f656183e1a566cad75.png
-syncable/twitter_logo.png: syncable/twitter_logo-bd827b2972da646474d01c985cd0a349.png
-tabs/code_selected.png: tabs/code_selected-af6f7095c22c9366a19f1b9b5545c3cd.png
-tabs/code_unselected.png: tabs/code_unselected-065f9e13d843d922c221116a4b209b8d.png
-tabs/experience_selected.png: tabs/experience_selected-67aebab0d136b4993751fd6bd80c3a69.png
-tabs/experience_unselected.png: tabs/experience_unselected-852d5e362d54024ac42bc31560af5279.png
-tabs/social_selected.png: tabs/social_selected-18c4b008618b3bc4083f64a84e923cc5.png
-tabs/social_unselected.png: tabs/social_unselected-5c1d1af6b335e8d370c643574df2e797.png
-tabs/speaking_selected.png: tabs/speaking_selected-4cb6d5a16e2fda2a6fb9c42bb04187ad.png
-tabs/speaking_unselected.png: tabs/speaking_unselected-6cd38fbc5bcbe95c01f26179bc11af03.png
-tabs/summary_selected.png: tabs/summary_selected-b3690b052f6e9dbdb2472fd43fb71a8d.png
-tabs/summary_unselected.png: tabs/summary_unselected-a7998f2c68e5d3d218bc0e0169a86991.png
-tabs/writing_selected.png: tabs/writing_selected-eac4b58e062642a27c0f7029ddef4592.png
-tabs/writing_unselected.png: tabs/writing_unselected-a92f79ae5a09b8f7df11564e424d7fbb.png
-talk/bitbucket.png: talk/bitbucket-c528532aeba5373593087beed1c6a579.png
-talk/git_hub.png: talk/git_hub-91500be30bfb8748b57600ac8c23a6e6.png
-talk/movie.png: talk/movie-d45a62e86873d751ed95aeca1e8f1320.png
-talk/movie_off.png: talk/movie_off-842dc2e3e89e1e9a0e55fab1965c7b3b.png
-talk/slide_share.png: talk/slide_share-47f0ff788e1b071dab9e45adf87130cf.png
-talk/slides.png: talk/slides-b1b4f3d35b17797c021d3ccae029e547.png
-talk/slides_off.png: talk/slides_off-863bc5f3c2bb5e11db532eca695af38c.png
-talk/source.png: talk/source-6ddea40d183f7e56a6a03ff1d84cc04e.png
-talk/speaker_rate.png: talk/speaker_rate-0c5050b5d868dcf51a0b9d401d6c19c8.png
-wait_bar_green.gif: wait_bar_green-fe59be614f82409cf9d0034ba6d15563.gif
-jquery.auto-geocoder.js: jquery-d661be51a6eb5a2038eb64868b48e231.auto-geocoder.js
-jquery.tools.min.js: jquery-71fb9c4119b34fc64c72d2c01ca2ff15.tools.min.js
-d3.chart.js: d3-65bea9677e60e7c453626223f7b49326.chart.js
-d3.layout.js: d3-1128d21798a8d6a9ace3c57e7879758b.layout.js
-d3.time.js: d3-06e299615f89d994c3ff4678869ce46d.time.js
-jquery-ui-1.8.16.custom.min.js: jquery-ui-1-1715cfedbba4768d596fa8db3b4fd0a7.8.16.custom.min.js
-css3buttons/icons.png: css3buttons/icons-63623b25faab8d82900696acc4ab1862.png
-jquery-ui.min.js: jquery-ui-1e121717b10dc0374b1623de4fe94e5f.min.js
-jquery.min.js: jquery-56a4675fff1e5975dad93f15a18db7c1.min.js
-application.js: application-d996665557d33a1204a8f204dee36a0e.js
-application.css: application-612718d0f8c629d6f2905860e99ab52a.css
+ajax-loader.gif: ajax-loader.gif
+autodiscover/bitbucket.png: autodiscover/bitbucket.png
+autodiscover/git_hub.png: autodiscover/git_hub.png
+background.png: background.png
+bitbucket_info_logo.png: bitbucket_info_logo.png
+close.png: close.png
+coder_wall_info_logo.png: coder_wall_info_logo.png
+default_company.png: default_company.png
+default_talk.png: default_talk.png
+experience.png: experience.png
+git_hub_info_logo.png: git_hub_info_logo.png
+homepage/home_services.png: homepage/home_services.png
+icons/codemav_icon.png: icons/codemav_icon.png
+icons/git_hub_icon.png: icons/git_hub_icon.png
+icons/github-logo.png: icons/github-logo.png
+icons/github_followers_icon.png: icons/github_followers_icon.png
+icons/logo_twitter_withbird_1000_allblue.png: icons/logo_twitter_withbird_1000_allblue.png
+icons/twitter_logo.acorn: icons/twitter_logo.acorn
+icons/twitter_logo.png: icons/twitter_logo.png
+linkedin_info_logo.png: linkedin_info_logo.png
+location_pin.png: location_pin.png
+main_code_mav_icon.png: main_code_mav_icon.png
+main_code_mav_logo.png: main_code_mav_logo.png
+overlay/close.png: overlay/close.png
+overlay/white.png: overlay/white.png
+silver_badge.png: silver_badge.png
+slide_share_info_logo.png: slide_share_info_logo.png
+speaker_rate_find_id.png: speaker_rate_find_id.png
+speaker_rate_info_logo.png: speaker_rate_info_logo.png
+stack_over_flow_info_logo.png: stack_over_flow_info_logo.png
+stack_overflow_find_id.png: stack_overflow_find_id.png
+stack_overflow_points_icon.png: stack_overflow_points_icon.png
+syncable/bitbucket_logo.png: syncable/bitbucket_logo.png
+syncable/coder_wall_logo.png: syncable/coder_wall_logo.png
+syncable/git_hub_logo.png: syncable/git_hub_logo.png
+syncable/linkedin_logo.png: syncable/linkedin_logo.png
+syncable/mini_speaker_rate_logo.png: syncable/mini_speaker_rate_logo.png
+syncable/mini_stack_overflow_logo.png: syncable/mini_stack_overflow_logo.png
+syncable/slide_share_logo.png: syncable/slide_share_logo.png
+syncable/speaker_rate_logo.png: syncable/speaker_rate_logo.png
+syncable/stack_over_flow_logo.png: syncable/stack_over_flow_logo.png
+syncable/stack_overflow_logo.png: syncable/stack_overflow_logo.png
+syncable/twitter_logo.png: syncable/twitter_logo.png
+tabs/code_selected.png: tabs/code_selected.png
+tabs/code_unselected.png: tabs/code_unselected.png
+tabs/experience_selected.png: tabs/experience_selected.png
+tabs/experience_unselected.png: tabs/experience_unselected.png
+tabs/social_selected.png: tabs/social_selected.png
+tabs/social_unselected.png: tabs/social_unselected.png
+tabs/speaking_selected.png: tabs/speaking_selected.png
+tabs/speaking_unselected.png: tabs/speaking_unselected.png
+tabs/summary_selected.png: tabs/summary_selected.png
+tabs/summary_unselected.png: tabs/summary_unselected.png
+tabs/writing_selected.png: tabs/writing_selected.png
+tabs/writing_unselected.png: tabs/writing_unselected.png
+talk/bitbucket.png: talk/bitbucket.png
+talk/git_hub.png: talk/git_hub.png
+talk/movie.png: talk/movie.png
+talk/movie_off.png: talk/movie_off.png
+talk/slide_share.png: talk/slide_share.png
+talk/slides.png: talk/slides.png
+talk/slides_off.png: talk/slides_off.png
+talk/source.png: talk/source.png
+talk/speaker_rate.png: talk/speaker_rate.png
+wait_bar_green.gif: wait_bar_green.gif
+application.js: application.js
+application.css: application.css
+css3buttons/icons.png: css3buttons/icons.png

From a371bc97d5c41fce9f30aee6e978174d4682deae Mon Sep 17 00:00:00 2001
From: Dinesh Matta <dineshdm7@gmail.com>
Date: Fri, 18 Jan 2013 23:37:28 +0530
Subject: [PATCH 2/2] Configured for deployment to Heroku > Adding precompiled
 assets

---
 config/mongoid.yml                            |   115 +-
 public/assets/ajax-loader.gif                 |   Bin 0 -> 673 bytes
 public/assets/application.css                 |  3786 +++
 public/assets/application.css.gz              |   Bin 0 -> 13275 bytes
 public/assets/application.js                  | 19531 ++++++++++++++++
 public/assets/application.js.gz               |   Bin 0 -> 244024 bytes
 public/assets/autodiscover/bitbucket.png      |   Bin 0 -> 5189 bytes
 public/assets/autodiscover/git_hub.png        |   Bin 0 -> 3627 bytes
 public/assets/background.png                  |   Bin 0 -> 8715 bytes
 public/assets/bitbucket_info_logo.png         |   Bin 0 -> 9922 bytes
 public/assets/close.png                       |   Bin 0 -> 2154 bytes
 public/assets/coder_wall_info_logo.png        |   Bin 0 -> 5120 bytes
 public/assets/css3buttons/icons.png           |   Bin 0 -> 3948 bytes
 public/assets/default_company.png             |   Bin 0 -> 1702 bytes
 public/assets/default_talk.png                |   Bin 0 -> 4095 bytes
 public/assets/experience.png                  |   Bin 0 -> 1625 bytes
 public/assets/git_hub_info_logo.png           |   Bin 0 -> 3234 bytes
 public/assets/homepage/home_services.png      |   Bin 0 -> 41038 bytes
 public/assets/icons/codemav_icon.png          |   Bin 0 -> 4440 bytes
 public/assets/icons/git_hub_icon.png          |   Bin 0 -> 5551 bytes
 public/assets/icons/github-logo.png           |   Bin 0 -> 47650 bytes
 public/assets/icons/github_followers_icon.png |   Bin 0 -> 1131 bytes
 .../logo_twitter_withbird_1000_allblue.png    |   Bin 0 -> 10421 bytes
 public/assets/icons/twitter_logo.acorn        |   Bin 0 -> 20480 bytes
 public/assets/icons/twitter_logo.png          |   Bin 0 -> 3566 bytes
 public/assets/linkedin_info_logo.png          |   Bin 0 -> 4730 bytes
 public/assets/location_pin.png                |   Bin 0 -> 444 bytes
 public/assets/main_code_mav_icon.png          |   Bin 0 -> 10904 bytes
 public/assets/main_code_mav_logo.png          |   Bin 0 -> 6278 bytes
 public/assets/overlay/close.png               |   Bin 0 -> 2154 bytes
 public/assets/overlay/white.png               |   Bin 0 -> 4233 bytes
 public/assets/silver_badge.png                |   Bin 0 -> 862 bytes
 public/assets/slide_share_info_logo.png       |   Bin 0 -> 11087 bytes
 public/assets/speaker_rate_find_id.png        |   Bin 0 -> 10813 bytes
 public/assets/speaker_rate_info_logo.png      |   Bin 0 -> 8355 bytes
 public/assets/stack_over_flow_info_logo.png   |   Bin 0 -> 2397 bytes
 public/assets/stack_overflow_find_id.png      |   Bin 0 -> 12188 bytes
 public/assets/stack_overflow_points_icon.png  |   Bin 0 -> 1063 bytes
 public/assets/syncable/bitbucket_logo.png     |   Bin 0 -> 9037 bytes
 public/assets/syncable/coder_wall_logo.png    |   Bin 0 -> 5369 bytes
 public/assets/syncable/git_hub_logo.png       |   Bin 0 -> 4481 bytes
 public/assets/syncable/linkedin_logo.png      |   Bin 0 -> 3678 bytes
 .../syncable/mini_speaker_rate_logo.png       |   Bin 0 -> 4559 bytes
 .../syncable/mini_stack_overflow_logo.png     |   Bin 0 -> 1187 bytes
 public/assets/syncable/slide_share_logo.png   |   Bin 0 -> 10920 bytes
 public/assets/syncable/speaker_rate_logo.png  |   Bin 0 -> 8621 bytes
 .../assets/syncable/stack_over_flow_logo.png  |   Bin 0 -> 2976 bytes
 .../assets/syncable/stack_overflow_logo.png   |   Bin 0 -> 2976 bytes
 public/assets/syncable/twitter_logo.png       |   Bin 0 -> 4873 bytes
 public/assets/tabs/code_selected.png          |   Bin 0 -> 751 bytes
 public/assets/tabs/code_unselected.png        |   Bin 0 -> 812 bytes
 public/assets/tabs/experience_selected.png    |   Bin 0 -> 716 bytes
 public/assets/tabs/experience_unselected.png  |   Bin 0 -> 737 bytes
 public/assets/tabs/social_selected.png        |   Bin 0 -> 227 bytes
 public/assets/tabs/social_unselected.png      |   Bin 0 -> 736 bytes
 public/assets/tabs/speaking_selected.png      |   Bin 0 -> 630 bytes
 public/assets/tabs/speaking_unselected.png    |   Bin 0 -> 651 bytes
 public/assets/tabs/summary_selected.png       |   Bin 0 -> 632 bytes
 public/assets/tabs/summary_unselected.png     |   Bin 0 -> 707 bytes
 public/assets/tabs/writing_selected.png       |   Bin 0 -> 558 bytes
 public/assets/tabs/writing_unselected.png     |   Bin 0 -> 597 bytes
 public/assets/talk/bitbucket.png              |   Bin 0 -> 6735 bytes
 public/assets/talk/git_hub.png                |   Bin 0 -> 3109 bytes
 public/assets/talk/movie.png                  |   Bin 0 -> 1224 bytes
 public/assets/talk/movie_off.png              |   Bin 0 -> 1803 bytes
 public/assets/talk/slide_share.png            |   Bin 0 -> 10985 bytes
 public/assets/talk/slides.png                 |   Bin 0 -> 619 bytes
 public/assets/talk/slides_off.png             |   Bin 0 -> 1059 bytes
 public/assets/talk/source.png                 |   Bin 0 -> 1594 bytes
 public/assets/talk/speaker_rate.png           |   Bin 0 -> 7210 bytes
 public/assets/wait_bar_green.gif              |   Bin 0 -> 6126 bytes
 71 files changed, 23331 insertions(+), 101 deletions(-)
 create mode 100644 public/assets/ajax-loader.gif
 create mode 100644 public/assets/application.css
 create mode 100644 public/assets/application.css.gz
 create mode 100644 public/assets/application.js
 create mode 100644 public/assets/application.js.gz
 create mode 100644 public/assets/autodiscover/bitbucket.png
 create mode 100644 public/assets/autodiscover/git_hub.png
 create mode 100644 public/assets/background.png
 create mode 100644 public/assets/bitbucket_info_logo.png
 create mode 100644 public/assets/close.png
 create mode 100644 public/assets/coder_wall_info_logo.png
 create mode 100644 public/assets/css3buttons/icons.png
 create mode 100644 public/assets/default_company.png
 create mode 100644 public/assets/default_talk.png
 create mode 100644 public/assets/experience.png
 create mode 100644 public/assets/git_hub_info_logo.png
 create mode 100644 public/assets/homepage/home_services.png
 create mode 100644 public/assets/icons/codemav_icon.png
 create mode 100644 public/assets/icons/git_hub_icon.png
 create mode 100644 public/assets/icons/github-logo.png
 create mode 100644 public/assets/icons/github_followers_icon.png
 create mode 100644 public/assets/icons/logo_twitter_withbird_1000_allblue.png
 create mode 100644 public/assets/icons/twitter_logo.acorn
 create mode 100644 public/assets/icons/twitter_logo.png
 create mode 100644 public/assets/linkedin_info_logo.png
 create mode 100644 public/assets/location_pin.png
 create mode 100644 public/assets/main_code_mav_icon.png
 create mode 100644 public/assets/main_code_mav_logo.png
 create mode 100644 public/assets/overlay/close.png
 create mode 100644 public/assets/overlay/white.png
 create mode 100644 public/assets/silver_badge.png
 create mode 100644 public/assets/slide_share_info_logo.png
 create mode 100644 public/assets/speaker_rate_find_id.png
 create mode 100644 public/assets/speaker_rate_info_logo.png
 create mode 100644 public/assets/stack_over_flow_info_logo.png
 create mode 100644 public/assets/stack_overflow_find_id.png
 create mode 100644 public/assets/stack_overflow_points_icon.png
 create mode 100644 public/assets/syncable/bitbucket_logo.png
 create mode 100644 public/assets/syncable/coder_wall_logo.png
 create mode 100644 public/assets/syncable/git_hub_logo.png
 create mode 100644 public/assets/syncable/linkedin_logo.png
 create mode 100644 public/assets/syncable/mini_speaker_rate_logo.png
 create mode 100644 public/assets/syncable/mini_stack_overflow_logo.png
 create mode 100644 public/assets/syncable/slide_share_logo.png
 create mode 100644 public/assets/syncable/speaker_rate_logo.png
 create mode 100644 public/assets/syncable/stack_over_flow_logo.png
 create mode 100644 public/assets/syncable/stack_overflow_logo.png
 create mode 100644 public/assets/syncable/twitter_logo.png
 create mode 100644 public/assets/tabs/code_selected.png
 create mode 100644 public/assets/tabs/code_unselected.png
 create mode 100644 public/assets/tabs/experience_selected.png
 create mode 100644 public/assets/tabs/experience_unselected.png
 create mode 100644 public/assets/tabs/social_selected.png
 create mode 100644 public/assets/tabs/social_unselected.png
 create mode 100644 public/assets/tabs/speaking_selected.png
 create mode 100644 public/assets/tabs/speaking_unselected.png
 create mode 100644 public/assets/tabs/summary_selected.png
 create mode 100644 public/assets/tabs/summary_unselected.png
 create mode 100644 public/assets/tabs/writing_selected.png
 create mode 100644 public/assets/tabs/writing_unselected.png
 create mode 100644 public/assets/talk/bitbucket.png
 create mode 100644 public/assets/talk/git_hub.png
 create mode 100644 public/assets/talk/movie.png
 create mode 100644 public/assets/talk/movie_off.png
 create mode 100644 public/assets/talk/slide_share.png
 create mode 100644 public/assets/talk/slides.png
 create mode 100644 public/assets/talk/slides_off.png
 create mode 100644 public/assets/talk/source.png
 create mode 100644 public/assets/talk/speaker_rate.png
 create mode 100644 public/assets/wait_bar_green.gif

diff --git a/config/mongoid.yml b/config/mongoid.yml
index 14da93b..1e3aa38 100644
--- a/config/mongoid.yml
+++ b/config/mongoid.yml
@@ -1,106 +1,19 @@
 development:
-  # Configure available database sessions. (required)
-  sessions:
-    # Defines the default session. (required)
-    default:
-      # Defines the name of the default database that Mongoid can connect to.
-      # (required).
-      database: codemav_development_new
-      # Provides the hosts the default session can connect to. Must be an array
-      # of host:port pairs. (required)
-      hosts:
-        - localhost:27017
-      options:
-        # Change whether the session persists in safe mode by default.
-        # (default: false)
-        # safe: false
+  host: localhost
+  database: codemav_development
 
-        # Change the default consistency model to :eventual or :strong.
-        # :eventual will send reads to secondaries, :strong sends everything
-        # to master. (default: :eventual)
-        # consistency: :eventual
-
-        # How many times Moped should attempt to retry an operation after
-        # failure. (default: 30)
-        # max_retries: 30
-
-        # The time in seconds that Moped should wait before retrying an
-        # operation on failure. (default: 1)
-        # retry_interval: 1
-  # Configure Mongoid specific options. (optional)
-  options:
-    # Configuration for whether or not to allow access to fields that do
-    # not have a field definition on the model. (default: true)
-    # allow_dynamic_fields: true
-
-    # Enable the identity map, needed for eager loading. (default: false)
-    # identity_map_enabled: false
-
-    # Includes the root model name in json serialization. (default: false)
-    # include_root_in_json: false
-
-    # Include the _type field in serializaion. (default: false)
-    # include_type_for_serialization: false
-
-    # Preload all models in development, needed when models use
-    # inheritance. (default: false)
-    # preload_models: false
-
-    # Protect id and type from mass assignment. (default: true)
-    # protect_sensitive_fields: true
-
-    # Raise an error when performing a #find and the document is not found.
-    # (default: true)
-    # raise_not_found_error: true
-
-    # Raise an error when defining a scope with the same name as an
-    # existing method. (default: false)
-    # scope_overwrite_exception: false
-
-    # Skip the database version check, used when connecting to a db without
-    # admin access. (default: false)
-    # skip_version_check: false
-
-    # User Active Support's time zone in conversions. (default: true)
-    # use_activesupport_time_zone: true
-
-    # Ensure all times are UTC in the app side. (default: false)
-    # use_utc: false
 test:
-  sessions:
-    default:
-      database: codemav_test
-      hosts:
-        - localhost:27017
-      options:
-        consistency: :strong
-        # In the test environment we lower the retries and retry interval to
-        # low amounts for fast failures.
-        max_retries: 1
-        retry_interval: 0
-
-# development:
-#   host: localhost
-#   database: codemav
-
-# test:
-#   host: localhost
-#   database: codemav_test
+  host: localhost
+  database: codemav_test
 
 # set these environment variables on your prod server
-# production:
-#   uri: <%= ENV['MONGOHQ_URL'] %>
-#   # slaves:
-#   #   - host: slave1.local
-#   #     port: 27018
-#   #   - host: slave2.local
-#   #     port: 27019
-<% if ENV['MONGOHQ_URL'] %>
-  production:   
-    sessions:
-      default:
-        uri: <%= ENV['MONGOHQ_URL'] %>
-        options:
-          skip_version_check: true
-          safe: true
-<% end %>        
\ No newline at end of file
+production:
+  uri: <%= ENV['MONGOHQ_URL'] %>
+  max_retries_on_connection_failure: 20
+  persist_in_safe_mode: true
+  skip_version_check: true
+  # slaves:
+  #   - host: slave1.local
+  #     port: 27018
+  #   - host: slave2.local
+  #     port: 27019
\ No newline at end of file
diff --git a/public/assets/ajax-loader.gif b/public/assets/ajax-loader.gif
new file mode 100644
index 0000000000000000000000000000000000000000..f2a1bc0c6f545e20e631a96e8e92f9822e75d046
GIT binary patch
literal 673
zcmZ?wbhEHb6krfw_{6~Q|Nnmm28Kh24mmkF0U1e2Nli^nlO|14{3qpHl$uzQnxasi
zS(2fUn3Y(Olb@KPmzkHA&!G5|g@FsGT=74*pKD04vtxj(k)8oFBTz^Oh=E26FfcG1
zbL_hF&)}42ws10s6^G;;cE1^EoUR)U5A70}d2pLv!jVIT7j&Z~EblI3x0K*v_sV|m
z0W=b9G$XP(CLnYCdK49;TX=SFc-G}o=oA=|U?{1O;Nu!CwW3C5Yw7*Bi4yD$3fCnb
zwK+>}QdQ9sf*QnxY>*kpE+b{_Q;sJloS71)&(@kO!}mqf@1v(v;*8Y=G9S3kY~Cw#
zY=t&c<XiDSjLnDnjaH^e&EL-gHHsP8D4^exRJBhTwM~38CoI0Tdl_e|A`gq9OM9Y>
z;3~JK4HxB^lY(MD+sYeQ=t%XSSW;x^1M?dTvN=W^yNcAcy`HCte31C;)5xP%b~qs>
zDP&4(%TBqBNGHwnryK;B<zCvzA65gK6Eq2C3@frRK<6kNnqVpZxa9esTk{MgkIOtz
z)N|T4_f+_rMTR_V+#<z^yEmAApUT*1uz|C4_xxN<FPJ%O$mRf@bLZa&PQjaVLStt!
zzPnXeFg2m$ZsMG~CevCS-HsZFOh}l$jggn-kb}T%!-hlG&P{|F!;WDLFy>dMI$fEg
xd0mc!<FG>C@j^ZpLxYv4HmnPfI0THYuv<%+6iSmMn&w3dPGDfL1|=LY008wP(boU~

literal 0
HcmV?d00001

diff --git a/public/assets/application.css b/public/assets/application.css
new file mode 100644
index 0000000..884350a
--- /dev/null
+++ b/public/assets/application.css
@@ -0,0 +1,3786 @@
+/*
+ * Bootstrap v1.3.0
+ *
+ * Copyright 2011 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 @twitter by @mdo and @fat.
+ * Date: Mon Oct 10 14:31:07 CDT 2011
+ */
+/* Reset.less
+ * Props to Eric Meyer (meyerweb.com) for his CSS reset file. We're using an adapted version here	that cuts out some of the reset HTML elements we will never need here (i.e., dfn, samp, etc).
+ * ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
+/* line 15, ../../app/assets/stylesheets/bootstrap.css */
+html, body {
+  margin: 0;
+  padding: 0;
+}
+
+/* line 66, ../../app/assets/stylesheets/bootstrap.css */
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+p,
+blockquote,
+pre,
+a,
+abbr,
+acronym,
+address,
+cite,
+code,
+del,
+dfn,
+em,
+img,
+q,
+s,
+samp,
+small,
+strike,
+strong,
+sub,
+sup,
+tt,
+var,
+dd,
+dl,
+dt,
+li,
+ol,
+ul,
+fieldset,
+form,
+label,
+legend,
+button,
+table,
+caption,
+tbody,
+tfoot,
+thead,
+tr,
+th,
+td {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: normal;
+  font-style: normal;
+  font-size: 100%;
+  line-height: 1;
+  font-family: inherit;
+}
+
+/* line 76, ../../app/assets/stylesheets/bootstrap.css */
+table {
+  border-collapse: collapse;
+  border-spacing: 0;
+}
+
+/* line 80, ../../app/assets/stylesheets/bootstrap.css */
+ol, ul {
+  list-style: none;
+}
+
+/* line 86, ../../app/assets/stylesheets/bootstrap.css */
+q:before,
+q:after,
+blockquote:before,
+blockquote:after {
+  content: "";
+}
+
+/* line 89, ../../app/assets/stylesheets/bootstrap.css */
+html {
+  overflow-y: scroll;
+  font-size: 100%;
+  -webkit-text-size-adjust: 100%;
+  -ms-text-size-adjust: 100%;
+}
+
+/* line 95, ../../app/assets/stylesheets/bootstrap.css */
+a:focus {
+  outline: thin dotted;
+}
+
+/* line 98, ../../app/assets/stylesheets/bootstrap.css */
+a:hover, a:active {
+  outline: 0;
+}
+
+/* line 110, ../../app/assets/stylesheets/bootstrap.css */
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+nav,
+section {
+  display: block;
+}
+
+/* line 113, ../../app/assets/stylesheets/bootstrap.css */
+audio, canvas, video {
+  display: inline-block;
+  *display: inline;
+  *zoom: 1;
+}
+
+/* line 118, ../../app/assets/stylesheets/bootstrap.css */
+audio:not([controls]) {
+  display: none;
+}
+
+/* line 121, ../../app/assets/stylesheets/bootstrap.css */
+sub, sup {
+  font-size: 75%;
+  line-height: 0;
+  position: relative;
+  vertical-align: baseline;
+}
+
+/* line 127, ../../app/assets/stylesheets/bootstrap.css */
+sup {
+  top: -0.5em;
+}
+
+/* line 130, ../../app/assets/stylesheets/bootstrap.css */
+sub {
+  bottom: -0.25em;
+}
+
+/* line 133, ../../app/assets/stylesheets/bootstrap.css */
+img {
+  border: 0;
+  -ms-interpolation-mode: bicubic;
+}
+
+/* line 140, ../../app/assets/stylesheets/bootstrap.css */
+button,
+input,
+select,
+textarea {
+  font-size: 100%;
+  margin: 0;
+  vertical-align: baseline;
+  *vertical-align: middle;
+}
+
+/* line 146, ../../app/assets/stylesheets/bootstrap.css */
+button, input {
+  line-height: normal;
+  *overflow: visible;
+}
+
+/* line 150, ../../app/assets/stylesheets/bootstrap.css */
+button::-moz-focus-inner, input::-moz-focus-inner {
+  border: 0;
+  padding: 0;
+}
+
+/* line 157, ../../app/assets/stylesheets/bootstrap.css */
+button,
+input[type="button"],
+input[type="reset"],
+input[type="submit"] {
+  cursor: pointer;
+  -webkit-appearance: button;
+}
+
+/* line 161, ../../app/assets/stylesheets/bootstrap.css */
+input[type="search"] {
+  -webkit-appearance: textfield;
+  -webkit-box-sizing: content-box;
+  -moz-box-sizing: content-box;
+  box-sizing: content-box;
+}
+
+/* line 167, ../../app/assets/stylesheets/bootstrap.css */
+input[type="search"]::-webkit-search-decoration {
+  -webkit-appearance: none;
+}
+
+/* line 170, ../../app/assets/stylesheets/bootstrap.css */
+textarea {
+  overflow: auto;
+  vertical-align: top;
+}
+
+/* Variables.less
+ * Variables to customize the look and feel of Bootstrap
+ * ----------------------------------------------------- */
+/* Mixins.less
+ * Snippets of reusable CSS to develop faster and keep code readable
+ * ----------------------------------------------------------------- */
+/*
+ * Scaffolding
+ * Basic and global styles for generating a grid system, structural layout, and page templates
+ * ------------------------------------------------------------------------------------------- */
+/* line 184, ../../app/assets/stylesheets/bootstrap.css */
+html, body {
+  background-color: #ffffff;
+}
+
+/* line 187, ../../app/assets/stylesheets/bootstrap.css */
+body {
+  margin: 0;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 13px;
+  font-weight: normal;
+  line-height: 18px;
+  color: #404040;
+}
+
+/* line 195, ../../app/assets/stylesheets/bootstrap.css */
+.container {
+  width: 940px;
+  margin-left: auto;
+  margin-right: auto;
+  zoom: 1;
+}
+
+/* line 201, ../../app/assets/stylesheets/bootstrap.css */
+.container:before, .container:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 207, ../../app/assets/stylesheets/bootstrap.css */
+.container:after {
+  clear: both;
+}
+
+/* line 210, ../../app/assets/stylesheets/bootstrap.css */
+.container-fluid {
+  position: relative;
+  min-width: 940px;
+  padding-left: 20px;
+  padding-right: 20px;
+  zoom: 1;
+}
+
+/* line 217, ../../app/assets/stylesheets/bootstrap.css */
+.container-fluid:before, .container-fluid:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 223, ../../app/assets/stylesheets/bootstrap.css */
+.container-fluid:after {
+  clear: both;
+}
+
+/* line 226, ../../app/assets/stylesheets/bootstrap.css */
+.container-fluid > .sidebar {
+  float: left;
+  width: 220px;
+}
+
+/* line 230, ../../app/assets/stylesheets/bootstrap.css */
+.container-fluid > .content {
+  margin-left: 240px;
+}
+
+/* line 233, ../../app/assets/stylesheets/bootstrap.css */
+a {
+  color: #0069d6;
+  text-decoration: none;
+  line-height: inherit;
+  font-weight: inherit;
+}
+
+/* line 239, ../../app/assets/stylesheets/bootstrap.css */
+a:hover {
+  color: #00438a;
+  text-decoration: underline;
+}
+
+/* line 243, ../../app/assets/stylesheets/bootstrap.css */
+.pull-right {
+  float: right;
+}
+
+/* line 246, ../../app/assets/stylesheets/bootstrap.css */
+.pull-left {
+  float: left;
+}
+
+/* line 249, ../../app/assets/stylesheets/bootstrap.css */
+.hide {
+  display: none;
+}
+
+/* line 252, ../../app/assets/stylesheets/bootstrap.css */
+.show {
+  display: block;
+}
+
+/* line 255, ../../app/assets/stylesheets/bootstrap.css */
+.row {
+  zoom: 1;
+  margin-left: -20px;
+}
+
+/* line 259, ../../app/assets/stylesheets/bootstrap.css */
+.row:before, .row:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 265, ../../app/assets/stylesheets/bootstrap.css */
+.row:after {
+  clear: both;
+}
+
+/* line 268, ../../app/assets/stylesheets/bootstrap.css */
+[class*="span"] {
+  display: inline;
+  float: left;
+  margin-left: 20px;
+}
+
+/* line 273, ../../app/assets/stylesheets/bootstrap.css */
+.span1 {
+  width: 40px;
+}
+
+/* line 276, ../../app/assets/stylesheets/bootstrap.css */
+.span2 {
+  width: 100px;
+}
+
+/* line 279, ../../app/assets/stylesheets/bootstrap.css */
+.span3 {
+  width: 160px;
+}
+
+/* line 282, ../../app/assets/stylesheets/bootstrap.css */
+.span4 {
+  width: 220px;
+}
+
+/* line 285, ../../app/assets/stylesheets/bootstrap.css */
+.span5 {
+  width: 280px;
+}
+
+/* line 288, ../../app/assets/stylesheets/bootstrap.css */
+.span6 {
+  width: 340px;
+}
+
+/* line 291, ../../app/assets/stylesheets/bootstrap.css */
+.span7 {
+  width: 400px;
+}
+
+/* line 294, ../../app/assets/stylesheets/bootstrap.css */
+.span8 {
+  width: 460px;
+}
+
+/* line 297, ../../app/assets/stylesheets/bootstrap.css */
+.span9 {
+  width: 520px;
+}
+
+/* line 300, ../../app/assets/stylesheets/bootstrap.css */
+.span10 {
+  width: 580px;
+}
+
+/* line 303, ../../app/assets/stylesheets/bootstrap.css */
+.span11 {
+  width: 640px;
+}
+
+/* line 306, ../../app/assets/stylesheets/bootstrap.css */
+.span12 {
+  width: 700px;
+}
+
+/* line 309, ../../app/assets/stylesheets/bootstrap.css */
+.span13 {
+  width: 760px;
+}
+
+/* line 312, ../../app/assets/stylesheets/bootstrap.css */
+.span14 {
+  width: 820px;
+}
+
+/* line 315, ../../app/assets/stylesheets/bootstrap.css */
+.span15 {
+  width: 880px;
+}
+
+/* line 318, ../../app/assets/stylesheets/bootstrap.css */
+.span16 {
+  width: 940px;
+}
+
+/* line 321, ../../app/assets/stylesheets/bootstrap.css */
+.span17 {
+  width: 1000px;
+}
+
+/* line 324, ../../app/assets/stylesheets/bootstrap.css */
+.span18 {
+  width: 1060px;
+}
+
+/* line 327, ../../app/assets/stylesheets/bootstrap.css */
+.span19 {
+  width: 1120px;
+}
+
+/* line 330, ../../app/assets/stylesheets/bootstrap.css */
+.span20 {
+  width: 1180px;
+}
+
+/* line 333, ../../app/assets/stylesheets/bootstrap.css */
+.span21 {
+  width: 1240px;
+}
+
+/* line 336, ../../app/assets/stylesheets/bootstrap.css */
+.span22 {
+  width: 1300px;
+}
+
+/* line 339, ../../app/assets/stylesheets/bootstrap.css */
+.span23 {
+  width: 1360px;
+}
+
+/* line 342, ../../app/assets/stylesheets/bootstrap.css */
+.span24 {
+  width: 1420px;
+}
+
+/* line 345, ../../app/assets/stylesheets/bootstrap.css */
+.offset1 {
+  margin-left: 80px;
+}
+
+/* line 348, ../../app/assets/stylesheets/bootstrap.css */
+.offset2 {
+  margin-left: 140px;
+}
+
+/* line 351, ../../app/assets/stylesheets/bootstrap.css */
+.offset3 {
+  margin-left: 200px;
+}
+
+/* line 354, ../../app/assets/stylesheets/bootstrap.css */
+.offset4 {
+  margin-left: 260px;
+}
+
+/* line 357, ../../app/assets/stylesheets/bootstrap.css */
+.offset5 {
+  margin-left: 320px;
+}
+
+/* line 360, ../../app/assets/stylesheets/bootstrap.css */
+.offset6 {
+  margin-left: 380px;
+}
+
+/* line 363, ../../app/assets/stylesheets/bootstrap.css */
+.offset7 {
+  margin-left: 440px;
+}
+
+/* line 366, ../../app/assets/stylesheets/bootstrap.css */
+.offset8 {
+  margin-left: 500px;
+}
+
+/* line 369, ../../app/assets/stylesheets/bootstrap.css */
+.offset9 {
+  margin-left: 560px;
+}
+
+/* line 372, ../../app/assets/stylesheets/bootstrap.css */
+.offset10 {
+  margin-left: 620px;
+}
+
+/* line 375, ../../app/assets/stylesheets/bootstrap.css */
+.offset11 {
+  margin-left: 680px;
+}
+
+/* line 378, ../../app/assets/stylesheets/bootstrap.css */
+.offset12 {
+  margin-left: 740px;
+}
+
+/* line 381, ../../app/assets/stylesheets/bootstrap.css */
+.span-one-third {
+  width: 300px;
+}
+
+/* line 384, ../../app/assets/stylesheets/bootstrap.css */
+.span-two-thirds {
+  width: 620px;
+}
+
+/* line 387, ../../app/assets/stylesheets/bootstrap.css */
+.offset-one-third {
+  margin-left: 340px;
+}
+
+/* line 390, ../../app/assets/stylesheets/bootstrap.css */
+.offset-two-thirds {
+  margin-left: 660px;
+}
+
+/* Typography.less
+ * Headings, body text, lists, code, and more for a versatile and durable typography system
+ * ---------------------------------------------------------------------------------------- */
+/* line 396, ../../app/assets/stylesheets/bootstrap.css */
+p {
+  font-size: 13px;
+  font-weight: normal;
+  line-height: 18px;
+  margin-bottom: 9px;
+}
+
+/* line 402, ../../app/assets/stylesheets/bootstrap.css */
+p small {
+  font-size: 11px;
+  color: #bfbfbf;
+}
+
+/* line 411, ../../app/assets/stylesheets/bootstrap.css */
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+  font-weight: bold;
+  color: #404040;
+}
+
+/* line 420, ../../app/assets/stylesheets/bootstrap.css */
+h1 small,
+h2 small,
+h3 small,
+h4 small,
+h5 small,
+h6 small {
+  color: #bfbfbf;
+}
+
+/* line 423, ../../app/assets/stylesheets/bootstrap.css */
+h1 {
+  margin-bottom: 18px;
+  font-size: 30px;
+  line-height: 36px;
+}
+
+/* line 428, ../../app/assets/stylesheets/bootstrap.css */
+h1 small {
+  font-size: 18px;
+}
+
+/* line 431, ../../app/assets/stylesheets/bootstrap.css */
+h2 {
+  font-size: 24px;
+  line-height: 36px;
+}
+
+/* line 435, ../../app/assets/stylesheets/bootstrap.css */
+h2 small {
+  font-size: 14px;
+}
+
+/* line 441, ../../app/assets/stylesheets/bootstrap.css */
+h3,
+h4,
+h5,
+h6 {
+  line-height: 36px;
+}
+
+/* line 444, ../../app/assets/stylesheets/bootstrap.css */
+h3 {
+  font-size: 18px;
+}
+
+/* line 447, ../../app/assets/stylesheets/bootstrap.css */
+h3 small {
+  font-size: 14px;
+}
+
+/* line 450, ../../app/assets/stylesheets/bootstrap.css */
+h4 {
+  font-size: 16px;
+}
+
+/* line 453, ../../app/assets/stylesheets/bootstrap.css */
+h4 small {
+  font-size: 12px;
+}
+
+/* line 456, ../../app/assets/stylesheets/bootstrap.css */
+h5 {
+  font-size: 14px;
+}
+
+/* line 459, ../../app/assets/stylesheets/bootstrap.css */
+h6 {
+  font-size: 13px;
+  color: #bfbfbf;
+  text-transform: uppercase;
+}
+
+/* line 464, ../../app/assets/stylesheets/bootstrap.css */
+ul, ol {
+  margin: 0 0 18px 25px;
+}
+
+/* line 470, ../../app/assets/stylesheets/bootstrap.css */
+ul ul,
+ul ol,
+ol ol,
+ol ul {
+  margin-bottom: 0;
+}
+
+/* line 473, ../../app/assets/stylesheets/bootstrap.css */
+ul {
+  list-style: disc;
+}
+
+/* line 476, ../../app/assets/stylesheets/bootstrap.css */
+ol {
+  list-style: decimal;
+}
+
+/* line 479, ../../app/assets/stylesheets/bootstrap.css */
+li {
+  line-height: 18px;
+  color: #808080;
+}
+
+/* line 483, ../../app/assets/stylesheets/bootstrap.css */
+ul.unstyled {
+  list-style: none;
+  margin-left: 0;
+}
+
+/* line 487, ../../app/assets/stylesheets/bootstrap.css */
+dl {
+  margin-bottom: 18px;
+}
+
+/* line 490, ../../app/assets/stylesheets/bootstrap.css */
+dl dt, dl dd {
+  line-height: 18px;
+}
+
+/* line 493, ../../app/assets/stylesheets/bootstrap.css */
+dl dt {
+  font-weight: bold;
+}
+
+/* line 496, ../../app/assets/stylesheets/bootstrap.css */
+dl dd {
+  margin-left: 9px;
+}
+
+/* line 499, ../../app/assets/stylesheets/bootstrap.css */
+hr {
+  margin: 20px 0 19px;
+  border: 0;
+  border-bottom: 1px solid #eee;
+}
+
+/* line 504, ../../app/assets/stylesheets/bootstrap.css */
+strong {
+  font-style: inherit;
+  font-weight: bold;
+}
+
+/* line 508, ../../app/assets/stylesheets/bootstrap.css */
+em {
+  font-style: italic;
+  font-weight: inherit;
+  line-height: inherit;
+}
+
+/* line 513, ../../app/assets/stylesheets/bootstrap.css */
+.muted {
+  color: #bfbfbf;
+}
+
+/* line 516, ../../app/assets/stylesheets/bootstrap.css */
+blockquote {
+  margin-bottom: 18px;
+  border-left: 5px solid #eee;
+  padding-left: 15px;
+}
+
+/* line 521, ../../app/assets/stylesheets/bootstrap.css */
+blockquote p {
+  font-size: 14px;
+  font-weight: 300;
+  line-height: 18px;
+  margin-bottom: 0;
+}
+
+/* line 527, ../../app/assets/stylesheets/bootstrap.css */
+blockquote small {
+  display: block;
+  font-size: 12px;
+  font-weight: 300;
+  line-height: 18px;
+  color: #bfbfbf;
+}
+
+/* line 534, ../../app/assets/stylesheets/bootstrap.css */
+blockquote small:before {
+  content: '\2014 \00A0';
+}
+
+/* line 537, ../../app/assets/stylesheets/bootstrap.css */
+address {
+  display: block;
+  line-height: 18px;
+  margin-bottom: 18px;
+}
+
+/* line 542, ../../app/assets/stylesheets/bootstrap.css */
+code, pre {
+  padding: 0 3px 2px;
+  font-family: Monaco, Andale Mono, Courier New, monospace;
+  font-size: 12px;
+  -webkit-border-radius: 3px;
+  -moz-border-radius: 3px;
+  border-radius: 3px;
+}
+
+/* line 550, ../../app/assets/stylesheets/bootstrap.css */
+code {
+  background-color: #fee9cc;
+  color: rgba(0, 0, 0, 0.75);
+  padding: 1px 3px;
+}
+
+/* line 555, ../../app/assets/stylesheets/bootstrap.css */
+pre {
+  background-color: #f5f5f5;
+  display: block;
+  padding: 8.5px;
+  margin: 0 0 18px;
+  line-height: 18px;
+  font-size: 12px;
+  border: 1px solid #ccc;
+  border: 1px solid rgba(0, 0, 0, 0.15);
+  -webkit-border-radius: 3px;
+  -moz-border-radius: 3px;
+  border-radius: 3px;
+  white-space: pre;
+  white-space: pre-wrap;
+  word-wrap: break-word;
+}
+
+/* Forms.less
+ * Base styles for various input types, form layouts, and states
+ * ------------------------------------------------------------- */
+/* line 574, ../../app/assets/stylesheets/bootstrap.css */
+form {
+  margin-bottom: 18px;
+}
+
+/* line 577, ../../app/assets/stylesheets/bootstrap.css */
+fieldset {
+  margin-bottom: 18px;
+  padding-top: 18px;
+}
+
+/* line 581, ../../app/assets/stylesheets/bootstrap.css */
+fieldset legend {
+  display: block;
+  padding-left: 150px;
+  font-size: 19.5px;
+  line-height: 1;
+  color: #404040;
+  *padding: 0 0 5px 145px;
+  /* IE6-7 */
+  *line-height: 1.5;
+  /* IE6-7 */
+}
+
+/* line 594, ../../app/assets/stylesheets/bootstrap.css */
+form .clearfix {
+  margin-bottom: 18px;
+  zoom: 1;
+}
+
+/* line 598, ../../app/assets/stylesheets/bootstrap.css */
+form .clearfix:before, form .clearfix:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 604, ../../app/assets/stylesheets/bootstrap.css */
+form .clearfix:after {
+  clear: both;
+}
+
+/* line 610, ../../app/assets/stylesheets/bootstrap.css */
+label,
+input,
+select,
+textarea {
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 13px;
+  font-weight: normal;
+  line-height: normal;
+}
+
+/* line 616, ../../app/assets/stylesheets/bootstrap.css */
+label {
+  padding-top: 6px;
+  font-size: 13px;
+  line-height: 18px;
+  float: left;
+  width: 130px;
+  text-align: right;
+  color: #404040;
+}
+
+/* line 625, ../../app/assets/stylesheets/bootstrap.css */
+form .input {
+  margin-left: 150px;
+}
+
+/* line 628, ../../app/assets/stylesheets/bootstrap.css */
+input[type=checkbox], input[type=radio] {
+  cursor: pointer;
+}
+
+/* line 634, ../../app/assets/stylesheets/bootstrap.css */
+input,
+textarea,
+select,
+.uneditable-input {
+  display: inline-block;
+  width: 210px;
+  height: 18px;
+  padding: 4px;
+  font-size: 13px;
+  line-height: 18px;
+  color: #808080;
+  border: 1px solid #ccc;
+  -webkit-border-radius: 3px;
+  -moz-border-radius: 3px;
+  border-radius: 3px;
+}
+
+/* mini reset for non-html5 file types */
+/* line 648, ../../app/assets/stylesheets/bootstrap.css */
+input[type=checkbox], input[type=radio] {
+  width: auto;
+  height: auto;
+  padding: 0;
+  margin: 3px 0;
+  *margin-top: 0;
+  /* IE6-7 */
+  line-height: normal;
+  border: none;
+}
+
+/* line 659, ../../app/assets/stylesheets/bootstrap.css */
+input[type=file] {
+  background-color: #ffffff;
+  padding: initial;
+  border: initial;
+  line-height: initial;
+  -webkit-box-shadow: none;
+  -moz-box-shadow: none;
+  box-shadow: none;
+}
+
+/* line 668, ../../app/assets/stylesheets/bootstrap.css */
+input[type=button], input[type=reset], input[type=submit] {
+  width: auto;
+  height: auto;
+}
+
+/* line 672, ../../app/assets/stylesheets/bootstrap.css */
+select, input[type=file] {
+  height: 27px;
+  line-height: 27px;
+  *margin-top: 4px;
+  /* For IE7, add top margin to align select with labels */
+}
+
+/* line 679, ../../app/assets/stylesheets/bootstrap.css */
+select[multiple] {
+  height: inherit;
+}
+
+/* line 682, ../../app/assets/stylesheets/bootstrap.css */
+textarea {
+  height: auto;
+}
+
+/* line 685, ../../app/assets/stylesheets/bootstrap.css */
+.uneditable-input {
+  background-color: #ffffff;
+  display: block;
+  border-color: #eee;
+  -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);
+  cursor: not-allowed;
+}
+
+/* line 694, ../../app/assets/stylesheets/bootstrap.css */
+:-moz-placeholder {
+  color: #bfbfbf;
+}
+
+/* line 697, ../../app/assets/stylesheets/bootstrap.css */
+::-webkit-input-placeholder {
+  color: #bfbfbf;
+}
+
+/* line 700, ../../app/assets/stylesheets/bootstrap.css */
+input, textarea {
+  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
+  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
+  -ms-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;
+  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
+  -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
+  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
+}
+
+/* line 710, ../../app/assets/stylesheets/bootstrap.css */
+input:focus, textarea:focus {
+  outline: 0;
+  border-color: rgba(82, 168, 236, 0.8);
+  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6);
+  -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6);
+  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6);
+}
+
+/* line 717, ../../app/assets/stylesheets/bootstrap.css */
+input[type=file]:focus, input[type=checkbox]:focus, select:focus {
+  -webkit-box-shadow: none;
+  -moz-box-shadow: none;
+  box-shadow: none;
+  outline: 1px dotted #666;
+}
+
+/* line 723, ../../app/assets/stylesheets/bootstrap.css */
+form div.clearfix.error {
+  background: #fae5e3;
+  padding: 10px 0;
+  margin: -10px 0 10px;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+}
+
+/* line 731, ../../app/assets/stylesheets/bootstrap.css */
+form div.clearfix.error > label, form div.clearfix.error span.help-inline, form div.clearfix.error span.help-block {
+  color: #9d261d;
+}
+
+/* line 734, ../../app/assets/stylesheets/bootstrap.css */
+form div.clearfix.error input, form div.clearfix.error textarea {
+  border-color: #c87872;
+  -webkit-box-shadow: 0 0 3px rgba(171, 41, 32, 0.25);
+  -moz-box-shadow: 0 0 3px rgba(171, 41, 32, 0.25);
+  box-shadow: 0 0 3px rgba(171, 41, 32, 0.25);
+}
+
+/* line 740, ../../app/assets/stylesheets/bootstrap.css */
+form div.clearfix.error input:focus, form div.clearfix.error textarea:focus {
+  border-color: #b9554d;
+  -webkit-box-shadow: 0 0 6px rgba(171, 41, 32, 0.5);
+  -moz-box-shadow: 0 0 6px rgba(171, 41, 32, 0.5);
+  box-shadow: 0 0 6px rgba(171, 41, 32, 0.5);
+}
+
+/* line 746, ../../app/assets/stylesheets/bootstrap.css */
+form div.clearfix.error .input-prepend span.add-on, form div.clearfix.error .input-append span.add-on {
+  background: #f4c8c5;
+  border-color: #c87872;
+  color: #b9554d;
+}
+
+/* line 754, ../../app/assets/stylesheets/bootstrap.css */
+.input-mini,
+input.mini,
+textarea.mini,
+select.mini {
+  width: 60px;
+}
+
+/* line 760, ../../app/assets/stylesheets/bootstrap.css */
+.input-small,
+input.small,
+textarea.small,
+select.small {
+  width: 90px;
+}
+
+/* line 766, ../../app/assets/stylesheets/bootstrap.css */
+.input-medium,
+input.medium,
+textarea.medium,
+select.medium {
+  width: 150px;
+}
+
+/* line 772, ../../app/assets/stylesheets/bootstrap.css */
+.input-large,
+input.large,
+textarea.large,
+select.large {
+  width: 210px;
+}
+
+/* line 778, ../../app/assets/stylesheets/bootstrap.css */
+.input-xlarge,
+input.xlarge,
+textarea.xlarge,
+select.xlarge {
+  width: 270px;
+}
+
+/* line 784, ../../app/assets/stylesheets/bootstrap.css */
+.input-xxlarge,
+input.xxlarge,
+textarea.xxlarge,
+select.xxlarge {
+  width: 530px;
+}
+
+/* line 787, ../../app/assets/stylesheets/bootstrap.css */
+textarea.xxlarge {
+  overflow-y: auto;
+}
+
+/* line 790, ../../app/assets/stylesheets/bootstrap.css */
+input.span1, textarea.span1, select.span1 {
+  display: inline-block;
+  float: none;
+  width: 30px;
+  margin-left: 0;
+}
+
+/* line 796, ../../app/assets/stylesheets/bootstrap.css */
+input.span2, textarea.span2, select.span2 {
+  display: inline-block;
+  float: none;
+  width: 90px;
+  margin-left: 0;
+}
+
+/* line 802, ../../app/assets/stylesheets/bootstrap.css */
+input.span3, textarea.span3, select.span3 {
+  display: inline-block;
+  float: none;
+  width: 150px;
+  margin-left: 0;
+}
+
+/* line 808, ../../app/assets/stylesheets/bootstrap.css */
+input.span4, textarea.span4, select.span4 {
+  display: inline-block;
+  float: none;
+  width: 210px;
+  margin-left: 0;
+}
+
+/* line 814, ../../app/assets/stylesheets/bootstrap.css */
+input.span5, textarea.span5, select.span5 {
+  display: inline-block;
+  float: none;
+  width: 270px;
+  margin-left: 0;
+}
+
+/* line 820, ../../app/assets/stylesheets/bootstrap.css */
+input.span6, textarea.span6, select.span6 {
+  display: inline-block;
+  float: none;
+  width: 330px;
+  margin-left: 0;
+}
+
+/* line 826, ../../app/assets/stylesheets/bootstrap.css */
+input.span7, textarea.span7, select.span7 {
+  display: inline-block;
+  float: none;
+  width: 390px;
+  margin-left: 0;
+}
+
+/* line 832, ../../app/assets/stylesheets/bootstrap.css */
+input.span8, textarea.span8, select.span8 {
+  display: inline-block;
+  float: none;
+  width: 450px;
+  margin-left: 0;
+}
+
+/* line 838, ../../app/assets/stylesheets/bootstrap.css */
+input.span9, textarea.span9, select.span9 {
+  display: inline-block;
+  float: none;
+  width: 510px;
+  margin-left: 0;
+}
+
+/* line 844, ../../app/assets/stylesheets/bootstrap.css */
+input.span10, textarea.span10, select.span10 {
+  display: inline-block;
+  float: none;
+  width: 570px;
+  margin-left: 0;
+}
+
+/* line 850, ../../app/assets/stylesheets/bootstrap.css */
+input.span11, textarea.span11, select.span11 {
+  display: inline-block;
+  float: none;
+  width: 630px;
+  margin-left: 0;
+}
+
+/* line 856, ../../app/assets/stylesheets/bootstrap.css */
+input.span12, textarea.span12, select.span12 {
+  display: inline-block;
+  float: none;
+  width: 690px;
+  margin-left: 0;
+}
+
+/* line 862, ../../app/assets/stylesheets/bootstrap.css */
+input.span13, textarea.span13, select.span13 {
+  display: inline-block;
+  float: none;
+  width: 750px;
+  margin-left: 0;
+}
+
+/* line 868, ../../app/assets/stylesheets/bootstrap.css */
+input.span14, textarea.span14, select.span14 {
+  display: inline-block;
+  float: none;
+  width: 810px;
+  margin-left: 0;
+}
+
+/* line 874, ../../app/assets/stylesheets/bootstrap.css */
+input.span15, textarea.span15, select.span15 {
+  display: inline-block;
+  float: none;
+  width: 870px;
+  margin-left: 0;
+}
+
+/* line 880, ../../app/assets/stylesheets/bootstrap.css */
+input.span16, textarea.span16, select.span16 {
+  display: inline-block;
+  float: none;
+  width: 930px;
+  margin-left: 0;
+}
+
+/* line 891, ../../app/assets/stylesheets/bootstrap.css */
+input[disabled],
+select[disabled],
+textarea[disabled],
+input[readonly],
+select[readonly],
+textarea[readonly] {
+  background-color: #f5f5f5;
+  border-color: #ddd;
+  cursor: not-allowed;
+}
+
+/* line 896, ../../app/assets/stylesheets/bootstrap.css */
+.actions {
+  background: #f5f5f5;
+  margin-top: 18px;
+  margin-bottom: 18px;
+  padding: 17px 20px 18px 150px;
+  border-top: 1px solid #ddd;
+  -webkit-border-radius: 0 0 3px 3px;
+  -moz-border-radius: 0 0 3px 3px;
+  border-radius: 0 0 3px 3px;
+}
+
+/* line 906, ../../app/assets/stylesheets/bootstrap.css */
+.actions .secondary-action {
+  float: right;
+}
+
+/* line 909, ../../app/assets/stylesheets/bootstrap.css */
+.actions .secondary-action a {
+  line-height: 30px;
+}
+
+/* line 912, ../../app/assets/stylesheets/bootstrap.css */
+.actions .secondary-action a:hover {
+  text-decoration: underline;
+}
+
+/* line 915, ../../app/assets/stylesheets/bootstrap.css */
+.help-inline, .help-block {
+  font-size: 11px;
+  line-height: 18px;
+  color: #bfbfbf;
+}
+
+/* line 920, ../../app/assets/stylesheets/bootstrap.css */
+.help-inline {
+  padding-left: 5px;
+  *position: relative;
+  /* IE6-7 */
+  *top: -5px;
+  /* IE6-7 */
+}
+
+/* line 929, ../../app/assets/stylesheets/bootstrap.css */
+.help-block {
+  display: block;
+  max-width: 600px;
+}
+
+/* line 933, ../../app/assets/stylesheets/bootstrap.css */
+.inline-inputs {
+  color: #808080;
+}
+
+/* line 936, ../../app/assets/stylesheets/bootstrap.css */
+.inline-inputs span, .inline-inputs input {
+  display: inline-block;
+}
+
+/* line 939, ../../app/assets/stylesheets/bootstrap.css */
+.inline-inputs input.mini {
+  width: 60px;
+}
+
+/* line 942, ../../app/assets/stylesheets/bootstrap.css */
+.inline-inputs input.small {
+  width: 90px;
+}
+
+/* line 945, ../../app/assets/stylesheets/bootstrap.css */
+.inline-inputs span {
+  padding: 0 2px 0 1px;
+}
+
+/* line 948, ../../app/assets/stylesheets/bootstrap.css */
+.input-prepend input, .input-append input {
+  -webkit-border-radius: 0 3px 3px 0;
+  -moz-border-radius: 0 3px 3px 0;
+  border-radius: 0 3px 3px 0;
+}
+
+/* line 953, ../../app/assets/stylesheets/bootstrap.css */
+.input-prepend .add-on, .input-append .add-on {
+  position: relative;
+  background: #f5f5f5;
+  border: 1px solid #ccc;
+  z-index: 2;
+  float: left;
+  display: block;
+  width: auto;
+  min-width: 16px;
+  height: 18px;
+  padding: 4px 4px 4px 5px;
+  margin-right: -1px;
+  font-weight: normal;
+  line-height: 18px;
+  color: #bfbfbf;
+  text-align: center;
+  text-shadow: 0 1px 0 #ffffff;
+  -webkit-border-radius: 3px 0 0 3px;
+  -moz-border-radius: 3px 0 0 3px;
+  border-radius: 3px 0 0 3px;
+}
+
+/* line 974, ../../app/assets/stylesheets/bootstrap.css */
+.input-prepend .active, .input-append .active {
+  background: #a9dba9;
+  border-color: #46a546;
+}
+
+/* line 978, ../../app/assets/stylesheets/bootstrap.css */
+.input-prepend .add-on {
+  *margin-top: 1px;
+  /* IE6-7 */
+}
+
+/* line 983, ../../app/assets/stylesheets/bootstrap.css */
+.input-append input {
+  float: left;
+  -webkit-border-radius: 3px 0 0 3px;
+  -moz-border-radius: 3px 0 0 3px;
+  border-radius: 3px 0 0 3px;
+}
+
+/* line 989, ../../app/assets/stylesheets/bootstrap.css */
+.input-append .add-on {
+  -webkit-border-radius: 0 3px 3px 0;
+  -moz-border-radius: 0 3px 3px 0;
+  border-radius: 0 3px 3px 0;
+  margin-right: 0;
+  margin-left: -1px;
+}
+
+/* line 996, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list {
+  margin: 0 0 5px;
+  width: 100%;
+}
+
+/* line 1000, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list li {
+  display: block;
+  padding: 0;
+  width: 100%;
+}
+
+/* line 1005, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list label {
+  display: block;
+  float: none;
+  width: auto;
+  padding: 0;
+  line-height: 18px;
+  text-align: left;
+  white-space: normal;
+}
+
+/* line 1014, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list label strong {
+  color: #808080;
+}
+
+/* line 1017, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list label small {
+  font-size: 11px;
+  font-weight: normal;
+}
+
+/* line 1021, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list .inputs-list {
+  margin-left: 25px;
+  margin-bottom: 10px;
+  padding-top: 0;
+}
+
+/* line 1026, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list:first-child {
+  padding-top: 6px;
+}
+
+/* line 1029, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list li + li {
+  padding-top: 2px;
+}
+
+/* line 1032, ../../app/assets/stylesheets/bootstrap.css */
+.inputs-list input[type=radio], .inputs-list input[type=checkbox] {
+  margin-bottom: 0;
+}
+
+/* line 1035, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked {
+  padding-left: 20px;
+}
+
+/* line 1038, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked fieldset {
+  padding-top: 9px;
+}
+
+/* line 1041, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked legend {
+  padding-left: 0;
+}
+
+/* line 1044, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked label {
+  display: block;
+  float: none;
+  width: auto;
+  font-weight: bold;
+  text-align: left;
+  line-height: 20px;
+  padding-top: 0;
+}
+
+/* line 1053, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked .clearfix {
+  margin-bottom: 9px;
+}
+
+/* line 1056, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked .clearfix div.input {
+  margin-left: 0;
+}
+
+/* line 1059, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked .inputs-list {
+  margin-bottom: 0;
+}
+
+/* line 1062, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked .inputs-list li {
+  padding-top: 0;
+}
+
+/* line 1065, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked .inputs-list li label {
+  font-weight: normal;
+  padding-top: 0;
+}
+
+/* line 1069, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked div.clearfix.error {
+  padding-top: 10px;
+  padding-bottom: 10px;
+  padding-left: 10px;
+  margin-top: 0;
+  margin-left: -10px;
+}
+
+/* line 1076, ../../app/assets/stylesheets/bootstrap.css */
+.form-stacked .actions {
+  margin-left: -20px;
+  padding-left: 20px;
+}
+
+/*
+ * Tables.less
+ * Tables for, you guessed it, tabular data
+ * ---------------------------------------- */
+/* line 1084, ../../app/assets/stylesheets/bootstrap.css */
+table {
+  width: 100%;
+  margin-bottom: 18px;
+  padding: 0;
+  border-collapse: separate;
+  *border-collapse: collapse;
+  /* IE7, collapse table to remove spacing */
+  font-size: 13px;
+  border: 1px solid #ddd;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+}
+
+/* line 1098, ../../app/assets/stylesheets/bootstrap.css */
+table th, table td {
+  padding: 10px 10px 9px;
+  line-height: 18px;
+  text-align: left;
+}
+
+/* line 1103, ../../app/assets/stylesheets/bootstrap.css */
+table th {
+  padding-top: 9px;
+  font-weight: bold;
+  vertical-align: middle;
+  border-bottom: 1px solid #ddd;
+}
+
+/* line 1109, ../../app/assets/stylesheets/bootstrap.css */
+table td {
+  vertical-align: top;
+}
+
+/* line 1112, ../../app/assets/stylesheets/bootstrap.css */
+table th + th, table td + td {
+  border-left: 1px solid #ddd;
+}
+
+/* line 1115, ../../app/assets/stylesheets/bootstrap.css */
+table tr + tr td {
+  border-top: 1px solid #ddd;
+}
+
+/* line 1118, ../../app/assets/stylesheets/bootstrap.css */
+table tbody tr:first-child td:first-child {
+  -webkit-border-radius: 4px 0 0 0;
+  -moz-border-radius: 4px 0 0 0;
+  border-radius: 4px 0 0 0;
+}
+
+/* line 1123, ../../app/assets/stylesheets/bootstrap.css */
+table tbody tr:first-child td:last-child {
+  -webkit-border-radius: 0 4px 0 0;
+  -moz-border-radius: 0 4px 0 0;
+  border-radius: 0 4px 0 0;
+}
+
+/* line 1128, ../../app/assets/stylesheets/bootstrap.css */
+table tbody tr:last-child td:first-child {
+  -webkit-border-radius: 0 0 0 4px;
+  -moz-border-radius: 0 0 0 4px;
+  border-radius: 0 0 0 4px;
+}
+
+/* line 1133, ../../app/assets/stylesheets/bootstrap.css */
+table tbody tr:last-child td:last-child {
+  -webkit-border-radius: 0 0 4px 0;
+  -moz-border-radius: 0 0 4px 0;
+  border-radius: 0 0 4px 0;
+}
+
+/* line 1138, ../../app/assets/stylesheets/bootstrap.css */
+.zebra-striped tbody tr:nth-child(odd) td {
+  background-color: #f9f9f9;
+}
+
+/* line 1141, ../../app/assets/stylesheets/bootstrap.css */
+.zebra-striped tbody tr:hover td {
+  background-color: #f5f5f5;
+}
+
+/* line 1144, ../../app/assets/stylesheets/bootstrap.css */
+table .header {
+  cursor: pointer;
+}
+
+/* line 1147, ../../app/assets/stylesheets/bootstrap.css */
+table .header:after {
+  content: "";
+  float: right;
+  margin-top: 7px;
+  border-width: 0 4px 4px;
+  border-style: solid;
+  border-color: #000 transparent;
+  visibility: hidden;
+}
+
+/* line 1156, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp, table .headerSortDown {
+  background-color: rgba(141, 192, 219, 0.25);
+  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+}
+
+/* line 1160, ../../app/assets/stylesheets/bootstrap.css */
+table .header:hover:after {
+  visibility: visible;
+}
+
+/* line 1163, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortDown:after, table .headerSortDown:hover:after {
+  visibility: visible;
+  filter: alpha(opacity=60);
+  -khtml-opacity: 0.6;
+  -moz-opacity: 0.6;
+  opacity: 0.6;
+}
+
+/* line 1170, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp:after {
+  border-bottom: none;
+  border-left: 4px solid transparent;
+  border-right: 4px solid transparent;
+  border-top: 4px solid #000;
+  visibility: visible;
+  -webkit-box-shadow: none;
+  -moz-box-shadow: none;
+  box-shadow: none;
+  filter: alpha(opacity=60);
+  -khtml-opacity: 0.6;
+  -moz-opacity: 0.6;
+  opacity: 0.6;
+}
+
+/* line 1184, ../../app/assets/stylesheets/bootstrap.css */
+table .blue {
+  color: #049cdb;
+  border-bottom-color: #049cdb;
+}
+
+/* line 1188, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp.blue, table .headerSortDown.blue {
+  background-color: #ade6fe;
+}
+
+/* line 1191, ../../app/assets/stylesheets/bootstrap.css */
+table .green {
+  color: #46a546;
+  border-bottom-color: #46a546;
+}
+
+/* line 1195, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp.green, table .headerSortDown.green {
+  background-color: #cdeacd;
+}
+
+/* line 1198, ../../app/assets/stylesheets/bootstrap.css */
+table .red {
+  color: #9d261d;
+  border-bottom-color: #9d261d;
+}
+
+/* line 1202, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp.red, table .headerSortDown.red {
+  background-color: #f4c8c5;
+}
+
+/* line 1205, ../../app/assets/stylesheets/bootstrap.css */
+table .yellow {
+  color: #ffc40d;
+  border-bottom-color: #ffc40d;
+}
+
+/* line 1209, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp.yellow, table .headerSortDown.yellow {
+  background-color: #fff6d9;
+}
+
+/* line 1212, ../../app/assets/stylesheets/bootstrap.css */
+table .orange {
+  color: #f89406;
+  border-bottom-color: #f89406;
+}
+
+/* line 1216, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp.orange, table .headerSortDown.orange {
+  background-color: #fee9cc;
+}
+
+/* line 1219, ../../app/assets/stylesheets/bootstrap.css */
+table .purple {
+  color: #7a43b6;
+  border-bottom-color: #7a43b6;
+}
+
+/* line 1223, ../../app/assets/stylesheets/bootstrap.css */
+table .headerSortUp.purple, table .headerSortDown.purple {
+  background-color: #e2d5f0;
+}
+
+/* Patterns.less
+ * Repeatable UI elements outside the base styles provided from the scaffolding
+ * ---------------------------------------------------------------------------- */
+/* line 1229, ../../app/assets/stylesheets/bootstrap.css */
+.topbar {
+  height: 40px;
+  position: fixed;
+  top: 0;
+  left: 0;
+  right: 0;
+  z-index: 10000;
+  overflow: visible;
+}
+
+/* line 1238, ../../app/assets/stylesheets/bootstrap.css */
+.topbar a {
+  color: #bfbfbf;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+}
+
+/* line 1242, ../../app/assets/stylesheets/bootstrap.css */
+.topbar h3 a:hover, .topbar .brand a:hover, .topbar ul .active > a {
+  background-color: #333;
+  background-color: rgba(255, 255, 255, 0.05);
+  color: #ffffff;
+  text-decoration: none;
+}
+
+/* line 1248, ../../app/assets/stylesheets/bootstrap.css */
+.topbar h3 {
+  position: relative;
+}
+
+/* line 1251, ../../app/assets/stylesheets/bootstrap.css */
+.topbar h3 a, .topbar .brand {
+  float: left;
+  display: block;
+  padding: 8px 20px 12px;
+  margin-left: -20px;
+  color: #ffffff;
+  font-size: 20px;
+  font-weight: 200;
+  line-height: 1;
+}
+
+/* line 1261, ../../app/assets/stylesheets/bootstrap.css */
+.topbar p {
+  margin: 0;
+  line-height: 40px;
+}
+
+/* line 1265, ../../app/assets/stylesheets/bootstrap.css */
+.topbar p a:hover {
+  background-color: transparent;
+  color: #ffffff;
+}
+
+/* line 1269, ../../app/assets/stylesheets/bootstrap.css */
+.topbar form {
+  float: left;
+  margin: 5px 0 0 0;
+  position: relative;
+  filter: alpha(opacity=100);
+  -khtml-opacity: 1;
+  -moz-opacity: 1;
+  opacity: 1;
+}
+
+/* line 1278, ../../app/assets/stylesheets/bootstrap.css */
+.topbar form.pull-right {
+  float: right;
+}
+
+/* line 1281, ../../app/assets/stylesheets/bootstrap.css */
+.topbar input {
+  background-color: #444;
+  background-color: rgba(255, 255, 255, 0.3);
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: normal;
+  font-weight: 13px;
+  line-height: 1;
+  padding: 4px 9px;
+  color: #ffffff;
+  color: rgba(255, 255, 255, 0.75);
+  border: 1px solid #111;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25);
+  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25);
+  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25);
+  -webkit-transition: none;
+  -moz-transition: none;
+  -ms-transition: none;
+  -o-transition: none;
+  transition: none;
+}
+
+/* line 1304, ../../app/assets/stylesheets/bootstrap.css */
+.topbar input:-moz-placeholder {
+  color: #e6e6e6;
+}
+
+/* line 1307, ../../app/assets/stylesheets/bootstrap.css */
+.topbar input::-webkit-input-placeholder {
+  color: #e6e6e6;
+}
+
+/* line 1310, ../../app/assets/stylesheets/bootstrap.css */
+.topbar input:hover {
+  background-color: #bfbfbf;
+  background-color: rgba(255, 255, 255, 0.5);
+  color: #ffffff;
+}
+
+/* line 1315, ../../app/assets/stylesheets/bootstrap.css */
+.topbar input:focus, .topbar input.focused {
+  outline: 0;
+  background-color: #ffffff;
+  color: #404040;
+  text-shadow: 0 1px 0 #ffffff;
+  border: 0;
+  padding: 5px 10px;
+  -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);
+}
+
+/* line 1326, ../../app/assets/stylesheets/bootstrap.css */
+.topbar-inner, .topbar .fill {
+  background-color: #222;
+  background-color: #222222;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#333333), to(#222222));
+  background-image: -moz-linear-gradient(top, #333333, #222222);
+  background-image: -ms-linear-gradient(top, #333333, #222222);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #333333), color-stop(100%, #222222));
+  background-image: -webkit-linear-gradient(top, #333333, #222222);
+  background-image: -o-linear-gradient(top, #333333, #222222);
+  background-image: linear, top, #333333, #222222;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
+  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+}
+
+/* line 1342, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul, .nav {
+  display: block;
+  float: left;
+  margin: 0 10px 0 0;
+  position: relative;
+  left: 0;
+}
+
+/* line 1349, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul > li, .nav > li {
+  display: block;
+  float: left;
+}
+
+/* line 1353, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul a, .nav a {
+  display: block;
+  float: none;
+  padding: 10px 10px 11px;
+  line-height: 19px;
+  text-decoration: none;
+}
+
+/* line 1360, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul a:hover, .nav a:hover {
+  color: #ffffff;
+  text-decoration: none;
+}
+
+/* line 1364, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .active > a, .nav .active > a {
+  background-color: #222;
+  background-color: rgba(0, 0, 0, 0.5);
+}
+
+/* line 1368, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul.secondary-nav, .nav.secondary-nav {
+  float: right;
+  margin-left: 10px;
+  margin-right: 0;
+}
+
+/* line 1376, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul.secondary-nav .menu-dropdown,
+.nav.secondary-nav .menu-dropdown,
+.topbar div > ul.secondary-nav .dropdown-menu,
+.nav.secondary-nav .dropdown-menu {
+  right: 0;
+  border: 0;
+}
+
+/* line 1387, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul a.menu:hover,
+.nav a.menu:hover,
+.topbar div > ul li.open .menu,
+.nav li.open .menu,
+.topbar div > ul .dropdown-toggle:hover,
+.nav .dropdown-toggle:hover,
+.topbar div > ul .dropdown.open .dropdown-toggle,
+.nav .dropdown.open .dropdown-toggle {
+  background: #444;
+  background: rgba(255, 255, 255, 0.05);
+}
+
+/* line 1394, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown,
+.nav .menu-dropdown,
+.topbar div > ul .dropdown-menu,
+.nav .dropdown-menu {
+  background-color: #333;
+}
+
+/* line 1404, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown a.menu,
+.nav .menu-dropdown a.menu,
+.topbar div > ul .dropdown-menu a.menu,
+.nav .dropdown-menu a.menu,
+.topbar div > ul .menu-dropdown .dropdown-toggle,
+.nav .menu-dropdown .dropdown-toggle,
+.topbar div > ul .dropdown-menu .dropdown-toggle,
+.nav .dropdown-menu .dropdown-toggle {
+  color: #ffffff;
+}
+
+/* line 1414, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown a.menu.open,
+.nav .menu-dropdown a.menu.open,
+.topbar div > ul .dropdown-menu a.menu.open,
+.nav .dropdown-menu a.menu.open,
+.topbar div > ul .menu-dropdown .dropdown-toggle.open,
+.nav .menu-dropdown .dropdown-toggle.open,
+.topbar div > ul .dropdown-menu .dropdown-toggle.open,
+.nav .dropdown-menu .dropdown-toggle.open {
+  background: #444;
+  background: rgba(255, 255, 255, 0.05);
+}
+
+/* line 1421, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown li a,
+.nav .menu-dropdown li a,
+.topbar div > ul .dropdown-menu li a,
+.nav .dropdown-menu li a {
+  color: #999;
+  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
+}
+
+/* line 1428, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown li a:hover,
+.nav .menu-dropdown li a:hover,
+.topbar div > ul .dropdown-menu li a:hover,
+.nav .dropdown-menu li a:hover {
+  background-color: #191919;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#292929), to(#191919));
+  background-image: -moz-linear-gradient(top, #292929, #191919);
+  background-image: -ms-linear-gradient(top, #292929, #191919);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #292929), color-stop(100%, #191919));
+  background-image: -webkit-linear-gradient(top, #292929, #191919);
+  background-image: -o-linear-gradient(top, #292929, #191919);
+  background-image: linear, top, #292929, #191919;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#292929', endColorstr='#191919', GradientType=0);
+  color: #ffffff;
+}
+
+/* line 1444, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown .active a,
+.nav .menu-dropdown .active a,
+.topbar div > ul .dropdown-menu .active a,
+.nav .dropdown-menu .active a {
+  color: #ffffff;
+}
+
+/* line 1450, ../../app/assets/stylesheets/bootstrap.css */
+.topbar div > ul .menu-dropdown .divider,
+.nav .menu-dropdown .divider,
+.topbar div > ul .dropdown-menu .divider,
+.nav .dropdown-menu .divider {
+  background-color: #222;
+  border-color: #444;
+}
+
+/* line 1454, ../../app/assets/stylesheets/bootstrap.css */
+.topbar ul .menu-dropdown li a, .topbar ul .dropdown-menu li a {
+  padding: 4px 15px;
+}
+
+/* line 1457, ../../app/assets/stylesheets/bootstrap.css */
+li.menu, .dropdown {
+  position: relative;
+}
+
+/* line 1460, ../../app/assets/stylesheets/bootstrap.css */
+a.menu:after, .dropdown-toggle:after {
+  width: 0;
+  height: 0;
+  display: inline-block;
+  content: "&darr;";
+  text-indent: -99999px;
+  vertical-align: top;
+  margin-top: 8px;
+  margin-left: 4px;
+  border-left: 4px solid transparent;
+  border-right: 4px solid transparent;
+  border-top: 4px solid #ffffff;
+  filter: alpha(opacity=50);
+  -khtml-opacity: 0.5;
+  -moz-opacity: 0.5;
+  opacity: 0.5;
+}
+
+/* line 1477, ../../app/assets/stylesheets/bootstrap.css */
+.menu-dropdown, .dropdown-menu {
+  background-color: #ffffff;
+  float: left;
+  display: none;
+  position: absolute;
+  top: 40px;
+  z-index: 900;
+  min-width: 160px;
+  max-width: 220px;
+  _width: 160px;
+  margin-left: 0;
+  margin-right: 0;
+  padding: 6px 0;
+  zoom: 1;
+  border-color: #999;
+  border-color: rgba(0, 0, 0, 0.2);
+  border-style: solid;
+  border-width: 0 1px 1px;
+  -webkit-border-radius: 0 0 6px 6px;
+  -moz-border-radius: 0 0 6px 6px;
+  border-radius: 0 0 6px 6px;
+  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
+  -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
+  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
+  -webkit-background-clip: padding-box;
+  -moz-background-clip: padding-box;
+  background-clip: padding-box;
+}
+
+/* line 1505, ../../app/assets/stylesheets/bootstrap.css */
+.menu-dropdown li, .dropdown-menu li {
+  float: none;
+  display: block;
+  background-color: none;
+}
+
+/* line 1510, ../../app/assets/stylesheets/bootstrap.css */
+.menu-dropdown .divider, .dropdown-menu .divider {
+  height: 1px;
+  margin: 5px 0;
+  overflow: hidden;
+  background-color: #eee;
+  border-bottom: 1px solid #ffffff;
+}
+
+/* line 1517, ../../app/assets/stylesheets/bootstrap.css */
+.topbar .dropdown-menu a, .dropdown-menu a {
+  display: block;
+  padding: 4px 15px;
+  clear: both;
+  font-weight: normal;
+  line-height: 18px;
+  color: #808080;
+  text-shadow: 0 1px 0 #ffffff;
+}
+
+/* line 1526, ../../app/assets/stylesheets/bootstrap.css */
+.topbar .dropdown-menu a:hover, .dropdown-menu a:hover {
+  background-color: #dddddd;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#eeeeee), to(#dddddd));
+  background-image: -moz-linear-gradient(top, #eeeeee, #dddddd);
+  background-image: -ms-linear-gradient(top, #eeeeee, #dddddd);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, #dddddd));
+  background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd);
+  background-image: -o-linear-gradient(top, #eeeeee, #dddddd);
+  background-image: linear, top, #eeeeee, #dddddd;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#dddddd', GradientType=0);
+  color: #404040;
+  text-decoration: none;
+  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025);
+  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025);
+  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025);
+}
+
+/* line 1546, ../../app/assets/stylesheets/bootstrap.css */
+.open .menu,
+.dropdown.open .menu,
+.open .dropdown-toggle,
+.dropdown.open .dropdown-toggle {
+  color: #ffffff;
+  background: #ccc;
+  background: rgba(0, 0, 0, 0.3);
+}
+
+/* line 1554, ../../app/assets/stylesheets/bootstrap.css */
+.open .menu-dropdown,
+.dropdown.open .menu-dropdown,
+.open .dropdown-menu,
+.dropdown.open .dropdown-menu {
+  display: block;
+}
+
+/* line 1557, ../../app/assets/stylesheets/bootstrap.css */
+.tabs, .pills {
+  margin: 0 0 20px;
+  padding: 0;
+  list-style: none;
+  zoom: 1;
+}
+
+/* line 1566, ../../app/assets/stylesheets/bootstrap.css */
+.tabs:before,
+.pills:before,
+.tabs:after,
+.pills:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 1572, ../../app/assets/stylesheets/bootstrap.css */
+.tabs:after, .pills:after {
+  clear: both;
+}
+
+/* line 1575, ../../app/assets/stylesheets/bootstrap.css */
+.tabs > li, .pills > li {
+  float: left;
+}
+
+/* line 1578, ../../app/assets/stylesheets/bootstrap.css */
+.tabs > li > a, .pills > li > a {
+  display: block;
+}
+
+/* line 1581, ../../app/assets/stylesheets/bootstrap.css */
+.tabs {
+  float: left;
+  width: 100%;
+  border-bottom: 1px solid #ddd;
+}
+
+/* line 1586, ../../app/assets/stylesheets/bootstrap.css */
+.tabs > li {
+  position: relative;
+  top: 1px;
+}
+
+/* line 1590, ../../app/assets/stylesheets/bootstrap.css */
+.tabs > li > a {
+  padding: 0 15px;
+  margin-right: 2px;
+  line-height: 36px;
+  border: 1px solid transparent;
+  -webkit-border-radius: 4px 4px 0 0;
+  -moz-border-radius: 4px 4px 0 0;
+  border-radius: 4px 4px 0 0;
+}
+
+/* line 1599, ../../app/assets/stylesheets/bootstrap.css */
+.tabs > li > a:hover {
+  text-decoration: none;
+  background-color: #eee;
+  border-color: #eee #eee #ddd;
+}
+
+/* line 1604, ../../app/assets/stylesheets/bootstrap.css */
+.tabs > li.active > a {
+  color: #808080;
+  background-color: #ffffff;
+  border: 1px solid #ddd;
+  border-bottom-color: transparent;
+}
+
+/* line 1610, ../../app/assets/stylesheets/bootstrap.css */
+.tabs .menu-dropdown, .tabs .dropdown-menu {
+  top: 35px;
+  border-width: 1px;
+  -webkit-border-radius: 0 6px 6px 6px;
+  -moz-border-radius: 0 6px 6px 6px;
+  border-radius: 0 6px 6px 6px;
+}
+
+/* line 1617, ../../app/assets/stylesheets/bootstrap.css */
+.tabs a.menu:after, .tabs .dropdown-toggle:after {
+  border-top-color: #999;
+  margin-top: 15px;
+  margin-left: 5px;
+}
+
+/* line 1622, ../../app/assets/stylesheets/bootstrap.css */
+.tabs li.open.menu .menu, .tabs .open.dropdown .dropdown-toggle {
+  border-color: #999;
+}
+
+/* line 1625, ../../app/assets/stylesheets/bootstrap.css */
+.tabs li.open a.menu:after, .tabs .dropdown.open .dropdown-toggle:after {
+  border-top-color: #555;
+}
+
+/* line 1628, ../../app/assets/stylesheets/bootstrap.css */
+.tab-content {
+  clear: both;
+}
+
+/* line 1631, ../../app/assets/stylesheets/bootstrap.css */
+.pills a {
+  margin: 5px 3px 5px 0;
+  padding: 0 15px;
+  text-shadow: 0 1px 1px #ffffff;
+  line-height: 30px;
+  -webkit-border-radius: 15px;
+  -moz-border-radius: 15px;
+  border-radius: 15px;
+}
+
+/* line 1640, ../../app/assets/stylesheets/bootstrap.css */
+.pills a:hover {
+  background: #00438a;
+  color: #ffffff;
+  text-decoration: none;
+  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
+}
+
+/* line 1646, ../../app/assets/stylesheets/bootstrap.css */
+.pills .active a {
+  background: #0069d6;
+  color: #ffffff;
+  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
+}
+
+/* line 1651, ../../app/assets/stylesheets/bootstrap.css */
+.tab-content > *, .pill-content > * {
+  display: none;
+}
+
+/* line 1654, ../../app/assets/stylesheets/bootstrap.css */
+.tab-content > .active, .pill-content > .active {
+  display: block;
+}
+
+/* line 1657, ../../app/assets/stylesheets/bootstrap.css */
+.breadcrumb {
+  margin: 0 0 18px;
+  padding: 7px 14px;
+  background-color: #f5f5f5;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(white), to(whitesmoke));
+  background-image: -moz-linear-gradient(top, white, whitesmoke);
+  background-image: -ms-linear-gradient(top, white, whitesmoke);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, whitesmoke));
+  background-image: -webkit-linear-gradient(top, white, whitesmoke);
+  background-image: -o-linear-gradient(top, white, whitesmoke);
+  background-image: linear, top, white, whitesmoke;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0);
+  border: 1px solid #ddd;
+  -webkit-border-radius: 3px;
+  -moz-border-radius: 3px;
+  border-radius: 3px;
+  -webkit-box-shadow: inset 0 1px 0 #ffffff;
+  -moz-box-shadow: inset 0 1px 0 #ffffff;
+  box-shadow: inset 0 1px 0 #ffffff;
+}
+
+/* line 1678, ../../app/assets/stylesheets/bootstrap.css */
+.breadcrumb li {
+  display: inline;
+  text-shadow: 0 1px 0 #ffffff;
+}
+
+/* line 1682, ../../app/assets/stylesheets/bootstrap.css */
+.breadcrumb .divider {
+  padding: 0 5px;
+  color: #bfbfbf;
+}
+
+/* line 1686, ../../app/assets/stylesheets/bootstrap.css */
+.breadcrumb .active a {
+  color: #404040;
+}
+
+/* line 1689, ../../app/assets/stylesheets/bootstrap.css */
+.hero-unit {
+  background-color: #f5f5f5;
+  margin-bottom: 30px;
+  padding: 60px;
+  -webkit-border-radius: 6px;
+  -moz-border-radius: 6px;
+  border-radius: 6px;
+}
+
+/* line 1697, ../../app/assets/stylesheets/bootstrap.css */
+.hero-unit h1 {
+  margin-bottom: 0;
+  font-size: 60px;
+  line-height: 1;
+  letter-spacing: -1px;
+}
+
+/* line 1703, ../../app/assets/stylesheets/bootstrap.css */
+.hero-unit p {
+  font-size: 18px;
+  font-weight: 200;
+  line-height: 27px;
+}
+
+/* line 1708, ../../app/assets/stylesheets/bootstrap.css */
+footer {
+  margin-top: 17px;
+  padding-top: 17px;
+  border-top: 1px solid #eee;
+}
+
+/* line 1713, ../../app/assets/stylesheets/bootstrap.css */
+.page-header {
+  margin-bottom: 17px;
+  border-bottom: 1px solid #ddd;
+  -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+  -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+}
+
+/* line 1720, ../../app/assets/stylesheets/bootstrap.css */
+.page-header h1 {
+  margin-bottom: 8px;
+}
+
+/* line 1738, ../../app/assets/stylesheets/bootstrap.css */
+.btn.danger,
+.alert-message.danger,
+.btn.danger:hover,
+.alert-message.danger:hover,
+.btn.error,
+.alert-message.error,
+.btn.error:hover,
+.alert-message.error:hover,
+.btn.success,
+.alert-message.success,
+.btn.success:hover,
+.alert-message.success:hover,
+.btn.info,
+.alert-message.info,
+.btn.info:hover,
+.alert-message.info:hover {
+  color: #ffffff;
+}
+
+/* line 1744, ../../app/assets/stylesheets/bootstrap.css */
+.btn.danger,
+.alert-message.danger,
+.btn.error,
+.alert-message.error {
+  background-color: #c43c35;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35));
+  background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35));
+  background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: linear, top, #ee5f5b, #c43c35;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #c43c35 #c43c35 #882a25;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+
+/* line 1759, ../../app/assets/stylesheets/bootstrap.css */
+.btn.success, .alert-message.success {
+  background-color: #57a957;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957));
+  background-image: -moz-linear-gradient(top, #62c462, #57a957);
+  background-image: -ms-linear-gradient(top, #62c462, #57a957);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957));
+  background-image: -webkit-linear-gradient(top, #62c462, #57a957);
+  background-image: -o-linear-gradient(top, #62c462, #57a957);
+  background-image: linear, top, #62c462, #57a957;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #57a957 #57a957 #3d773d;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+
+/* line 1774, ../../app/assets/stylesheets/bootstrap.css */
+.btn.info, .alert-message.info {
+  background-color: #339bb9;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9));
+  background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: -ms-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9));
+  background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: linear, top, #5bc0de, #339bb9;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #339bb9 #339bb9 #22697d;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+
+/* line 1789, ../../app/assets/stylesheets/bootstrap.css */
+.btn {
+  cursor: pointer;
+  display: inline-block;
+  background-color: #e6e6e6;
+  background-repeat: no-repeat;
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(white), color-stop(25%, white), to(#e6e6e6));
+  background-image: -webkit-linear-gradient(white, white 25%, #e6e6e6);
+  background-image: -moz-linear-gradient(top, white, white 25%, #e6e6e6);
+  background-image: -ms-linear-gradient(white, white 25%, #e6e6e6);
+  background-image: -o-linear-gradient(white, white 25%, #e6e6e6);
+  background-image: linear, top, white, white 25%, #e6e6e6;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
+  padding: 5px 14px 6px;
+  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+  color: #333;
+  font-size: 13px;
+  line-height: normal;
+  border: 1px solid #ccc;
+  border-bottom-color: #bbb;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+  -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);
+  -webkit-transition: 0.1s linear all;
+  -moz-transition: 0.1s linear all;
+  -ms-transition: 0.1s linear all;
+  -o-transition: 0.1s linear all;
+  transition: 0.1s linear all;
+}
+
+/* line 1820, ../../app/assets/stylesheets/bootstrap.css */
+.btn:hover {
+  background-position: 0 -15px;
+  color: #333;
+  text-decoration: none;
+}
+
+/* line 1825, ../../app/assets/stylesheets/bootstrap.css */
+.btn:focus {
+  outline: 1px dotted #666;
+}
+
+/* line 1828, ../../app/assets/stylesheets/bootstrap.css */
+.btn.primary {
+  color: #ffffff;
+  background-color: #0064cd;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd));
+  background-image: -moz-linear-gradient(top, #049cdb, #0064cd);
+  background-image: -ms-linear-gradient(top, #049cdb, #0064cd);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd));
+  background-image: -webkit-linear-gradient(top, #049cdb, #0064cd);
+  background-image: -o-linear-gradient(top, #049cdb, #0064cd);
+  background-image: linear, top, #049cdb, #0064cd;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #0064cd #0064cd #003f81;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+}
+
+/* line 1844, ../../app/assets/stylesheets/bootstrap.css */
+.btn:active {
+  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
+  -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
+  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+/* line 1849, ../../app/assets/stylesheets/bootstrap.css */
+.btn.disabled {
+  cursor: default;
+  background-image: none;
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
+  filter: alpha(opacity=65);
+  -khtml-opacity: 0.65;
+  -moz-opacity: 0.65;
+  opacity: 0.65;
+  -webkit-box-shadow: none;
+  -moz-box-shadow: none;
+  box-shadow: none;
+}
+
+/* line 1861, ../../app/assets/stylesheets/bootstrap.css */
+.btn[disabled] {
+  cursor: default;
+  background-image: none;
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
+  filter: alpha(opacity=65);
+  -khtml-opacity: 0.65;
+  -moz-opacity: 0.65;
+  opacity: 0.65;
+  -webkit-box-shadow: none;
+  -moz-box-shadow: none;
+  box-shadow: none;
+}
+
+/* line 1873, ../../app/assets/stylesheets/bootstrap.css */
+.btn.large {
+  font-size: 15px;
+  line-height: normal;
+  padding: 9px 14px 9px;
+  -webkit-border-radius: 6px;
+  -moz-border-radius: 6px;
+  border-radius: 6px;
+}
+
+/* line 1881, ../../app/assets/stylesheets/bootstrap.css */
+.btn.small {
+  padding: 7px 9px 7px;
+  font-size: 11px;
+}
+
+/* line 1885, ../../app/assets/stylesheets/bootstrap.css */
+:root .alert-message, :root .btn {
+  border-radius: 0 \0;
+}
+
+/* line 1888, ../../app/assets/stylesheets/bootstrap.css */
+button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner {
+  padding: 0;
+  border: 0;
+}
+
+/* line 1892, ../../app/assets/stylesheets/bootstrap.css */
+.close {
+  float: right;
+  color: #000000;
+  font-size: 20px;
+  font-weight: bold;
+  line-height: 13.5px;
+  text-shadow: 0 1px 0 #ffffff;
+  filter: alpha(opacity=20);
+  -khtml-opacity: 0.2;
+  -moz-opacity: 0.2;
+  opacity: 0.2;
+}
+
+/* line 1904, ../../app/assets/stylesheets/bootstrap.css */
+.close:hover {
+  color: #000000;
+  text-decoration: none;
+  filter: alpha(opacity=40);
+  -khtml-opacity: 0.4;
+  -moz-opacity: 0.4;
+  opacity: 0.4;
+}
+
+/* line 1912, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message {
+  position: relative;
+  padding: 7px 15px;
+  margin-bottom: 18px;
+  color: #404040;
+  background-color: #eedc94;
+  background-repeat: repeat-x;
+  background-image: -khtml-gradient(linear, left top, left bottom, from(#fceec1), to(#eedc94));
+  background-image: -moz-linear-gradient(top, #fceec1, #eedc94);
+  background-image: -ms-linear-gradient(top, #fceec1, #eedc94);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fceec1), color-stop(100%, #eedc94));
+  background-image: -webkit-linear-gradient(top, #fceec1, #eedc94);
+  background-image: -o-linear-gradient(top, #fceec1, #eedc94);
+  background-image: linear, top, #fceec1, #eedc94;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fceec1', endColorstr='#eedc94', GradientType=0);
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  border-color: #eedc94 #eedc94 #e4c652;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+  border-width: 1px;
+  border-style: solid;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
+  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
+  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
+}
+
+/* line 1940, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message .close {
+  *margin-top: 3px;
+  /* IE7 spacing */
+}
+
+/* line 1945, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message h5 {
+  line-height: 18px;
+}
+
+/* line 1948, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message p {
+  margin-bottom: 0;
+}
+
+/* line 1951, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message div {
+  margin-top: 5px;
+  margin-bottom: 2px;
+  line-height: 28px;
+}
+
+/* line 1956, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message .btn {
+  -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
+  -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
+  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
+}
+
+/* line 1961, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message {
+  background-image: none;
+  background-color: #fdf5d9;
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
+  padding: 14px;
+  border-color: #fceec1;
+  -webkit-box-shadow: none;
+  -moz-box-shadow: none;
+  box-shadow: none;
+}
+
+/* line 1971, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message ul, .alert-message.block-message p {
+  margin-right: 30px;
+}
+
+/* line 1974, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message ul {
+  margin-bottom: 0;
+}
+
+/* line 1977, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message li {
+  color: #404040;
+}
+
+/* line 1980, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message .alert-actions {
+  margin-top: 5px;
+}
+
+/* line 1983, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message.error, .alert-message.block-message.success, .alert-message.block-message.info {
+  color: #404040;
+  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+}
+
+/* line 1987, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message.error {
+  background-color: #fddfde;
+  border-color: #fbc7c6;
+}
+
+/* line 1991, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message.success {
+  background-color: #d1eed1;
+  border-color: #bfe7bf;
+}
+
+/* line 1995, ../../app/assets/stylesheets/bootstrap.css */
+.alert-message.block-message.info {
+  background-color: #ddf4fb;
+  border-color: #c6edf9;
+}
+
+/* line 1999, ../../app/assets/stylesheets/bootstrap.css */
+.pagination {
+  height: 36px;
+  margin: 18px 0;
+}
+
+/* line 2003, ../../app/assets/stylesheets/bootstrap.css */
+.pagination ul {
+  float: left;
+  margin: 0;
+  border: 1px solid #ddd;
+  border: 1px solid rgba(0, 0, 0, 0.15);
+  -webkit-border-radius: 3px;
+  -moz-border-radius: 3px;
+  border-radius: 3px;
+  -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);
+}
+
+/* line 2015, ../../app/assets/stylesheets/bootstrap.css */
+.pagination li {
+  display: inline;
+}
+
+/* line 2018, ../../app/assets/stylesheets/bootstrap.css */
+.pagination a {
+  float: left;
+  padding: 0 14px;
+  line-height: 34px;
+  border-right: 1px solid;
+  border-right-color: #ddd;
+  border-right-color: rgba(0, 0, 0, 0.15);
+  *border-right-color: #ddd;
+  /* IE6-7 */
+  text-decoration: none;
+}
+
+/* line 2030, ../../app/assets/stylesheets/bootstrap.css */
+.pagination a:hover, .pagination .active a {
+  background-color: #c7eefe;
+}
+
+/* line 2033, ../../app/assets/stylesheets/bootstrap.css */
+.pagination .disabled a, .pagination .disabled a:hover {
+  background-color: transparent;
+  color: #bfbfbf;
+}
+
+/* line 2037, ../../app/assets/stylesheets/bootstrap.css */
+.pagination .next a {
+  border: 0;
+}
+
+/* line 2040, ../../app/assets/stylesheets/bootstrap.css */
+.well {
+  background-color: #f5f5f5;
+  margin-bottom: 20px;
+  padding: 19px;
+  min-height: 20px;
+  border: 1px solid #eee;
+  border: 1px solid rgba(0, 0, 0, 0.05);
+  -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);
+}
+
+/* line 2054, ../../app/assets/stylesheets/bootstrap.css */
+.well blockquote {
+  border-color: #ddd;
+  border-color: rgba(0, 0, 0, 0.15);
+}
+
+/* line 2058, ../../app/assets/stylesheets/bootstrap.css */
+.modal-backdrop {
+  background-color: #000000;
+  position: fixed;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  z-index: 10000;
+}
+
+/* line 2067, ../../app/assets/stylesheets/bootstrap.css */
+.modal-backdrop.fade {
+  opacity: 0;
+}
+
+/* line 2070, ../../app/assets/stylesheets/bootstrap.css */
+.modal-backdrop, .modal-backdrop.fade.in {
+  filter: alpha(opacity=80);
+  -khtml-opacity: 0.8;
+  -moz-opacity: 0.8;
+  opacity: 0.8;
+}
+
+/* line 2076, ../../app/assets/stylesheets/bootstrap.css */
+.modal {
+  position: fixed;
+  top: 50%;
+  left: 50%;
+  z-index: 11000;
+  width: 560px;
+  margin: -250px 0 0 -250px;
+  background-color: #ffffff;
+  border: 1px solid #999;
+  border: 1px solid rgba(0, 0, 0, 0.3);
+  *border: 1px solid #999;
+  /* IE6-7 */
+  -webkit-border-radius: 6px;
+  -moz-border-radius: 6px;
+  border-radius: 6px;
+  -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;
+}
+
+/* line 2099, ../../app/assets/stylesheets/bootstrap.css */
+.modal .close {
+  margin-top: 7px;
+}
+
+/* line 2102, ../../app/assets/stylesheets/bootstrap.css */
+.modal.fade {
+  -webkit-transition: opacity .3s linear, top .3s ease-out;
+  -moz-transition: opacity .3s linear, top .3s ease-out;
+  -ms-transition: opacity .3s linear, top .3s ease-out;
+  -o-transition: opacity .3s linear, top .3s ease-out;
+  transition: opacity .3s linear, top .3s ease-out;
+  top: -25%;
+}
+
+/* line 2110, ../../app/assets/stylesheets/bootstrap.css */
+.modal.fade.in {
+  top: 50%;
+}
+
+/* line 2113, ../../app/assets/stylesheets/bootstrap.css */
+.modal-header {
+  border-bottom: 1px solid #eee;
+  padding: 5px 15px;
+}
+
+/* line 2117, ../../app/assets/stylesheets/bootstrap.css */
+.modal-body {
+  padding: 15px;
+}
+
+/* line 2120, ../../app/assets/stylesheets/bootstrap.css */
+.modal-footer {
+  background-color: #f5f5f5;
+  padding: 14px 15px 15px;
+  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;
+  -webkit-box-shadow: inset 0 1px 0 #ffffff;
+  -moz-box-shadow: inset 0 1px 0 #ffffff;
+  box-shadow: inset 0 1px 0 #ffffff;
+  zoom: 1;
+  margin-bottom: 0;
+}
+
+/* line 2133, ../../app/assets/stylesheets/bootstrap.css */
+.modal-footer:before, .modal-footer:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 2139, ../../app/assets/stylesheets/bootstrap.css */
+.modal-footer:after {
+  clear: both;
+}
+
+/* line 2142, ../../app/assets/stylesheets/bootstrap.css */
+.modal-footer .btn {
+  float: right;
+  margin-left: 5px;
+}
+
+/* line 2146, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy {
+  display: block;
+  position: absolute;
+  visibility: visible;
+  padding: 5px;
+  font-size: 11px;
+  z-index: 1000;
+  filter: alpha(opacity=80);
+  -khtml-opacity: 0.8;
+  -moz-opacity: 0.8;
+  opacity: 0.8;
+}
+
+/* line 2158, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy.fade.in {
+  filter: alpha(opacity=80);
+  -khtml-opacity: 0.8;
+  -moz-opacity: 0.8;
+  opacity: 0.8;
+}
+
+/* line 2164, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy.above .twipsy-arrow {
+  bottom: 0;
+  left: 50%;
+  margin-left: -5px;
+  border-left: 5px solid transparent;
+  border-right: 5px solid transparent;
+  border-top: 5px solid #000000;
+}
+
+/* line 2172, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy.left .twipsy-arrow {
+  top: 50%;
+  right: 0;
+  margin-top: -5px;
+  border-top: 5px solid transparent;
+  border-bottom: 5px solid transparent;
+  border-left: 5px solid #000000;
+}
+
+/* line 2180, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy.below .twipsy-arrow {
+  top: 0;
+  left: 50%;
+  margin-left: -5px;
+  border-left: 5px solid transparent;
+  border-right: 5px solid transparent;
+  border-bottom: 5px solid #000000;
+}
+
+/* line 2188, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy.right .twipsy-arrow {
+  top: 50%;
+  left: 0;
+  margin-top: -5px;
+  border-top: 5px solid transparent;
+  border-bottom: 5px solid transparent;
+  border-right: 5px solid #000000;
+}
+
+/* line 2196, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy-inner {
+  padding: 3px 8px;
+  background-color: #000000;
+  color: white;
+  text-align: center;
+  max-width: 200px;
+  text-decoration: none;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+}
+
+/* line 2207, ../../app/assets/stylesheets/bootstrap.css */
+.twipsy-arrow {
+  position: absolute;
+  width: 0;
+  height: 0;
+}
+
+/* line 2212, ../../app/assets/stylesheets/bootstrap.css */
+.popover {
+  position: absolute;
+  top: 0;
+  left: 0;
+  z-index: 1000;
+  padding: 5px;
+  display: none;
+}
+
+/* line 2220, ../../app/assets/stylesheets/bootstrap.css */
+.popover.above .arrow {
+  bottom: 0;
+  left: 50%;
+  margin-left: -5px;
+  border-left: 5px solid transparent;
+  border-right: 5px solid transparent;
+  border-top: 5px solid #000000;
+}
+
+/* line 2228, ../../app/assets/stylesheets/bootstrap.css */
+.popover.right .arrow {
+  top: 50%;
+  left: 0;
+  margin-top: -5px;
+  border-top: 5px solid transparent;
+  border-bottom: 5px solid transparent;
+  border-right: 5px solid #000000;
+}
+
+/* line 2236, ../../app/assets/stylesheets/bootstrap.css */
+.popover.below .arrow {
+  top: 0;
+  left: 50%;
+  margin-left: -5px;
+  border-left: 5px solid transparent;
+  border-right: 5px solid transparent;
+  border-bottom: 5px solid #000000;
+}
+
+/* line 2244, ../../app/assets/stylesheets/bootstrap.css */
+.popover.left .arrow {
+  top: 50%;
+  right: 0;
+  margin-top: -5px;
+  border-top: 5px solid transparent;
+  border-bottom: 5px solid transparent;
+  border-left: 5px solid #000000;
+}
+
+/* line 2252, ../../app/assets/stylesheets/bootstrap.css */
+.popover .arrow {
+  position: absolute;
+  width: 0;
+  height: 0;
+}
+
+/* line 2257, ../../app/assets/stylesheets/bootstrap.css */
+.popover .inner {
+  background-color: #000000;
+  background-color: rgba(0, 0, 0, 0.8);
+  padding: 3px;
+  overflow: hidden;
+  width: 280px;
+  -webkit-border-radius: 6px;
+  -moz-border-radius: 6px;
+  border-radius: 6px;
+  -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);
+}
+
+/* line 2270, ../../app/assets/stylesheets/bootstrap.css */
+.popover .title {
+  background-color: #f5f5f5;
+  padding: 9px 15px;
+  line-height: 1;
+  -webkit-border-radius: 3px 3px 0 0;
+  -moz-border-radius: 3px 3px 0 0;
+  border-radius: 3px 3px 0 0;
+  border-bottom: 1px solid #eee;
+}
+
+/* line 2279, ../../app/assets/stylesheets/bootstrap.css */
+.popover .content {
+  background-color: #ffffff;
+  padding: 14px;
+  -webkit-border-radius: 0 0 3px 3px;
+  -moz-border-radius: 0 0 3px 3px;
+  border-radius: 0 0 3px 3px;
+  -webkit-background-clip: padding-box;
+  -moz-background-clip: padding-box;
+  background-clip: padding-box;
+}
+
+/* line 2289, ../../app/assets/stylesheets/bootstrap.css */
+.popover .content p, .popover .content ul, .popover .content ol {
+  margin-bottom: 0;
+}
+
+/* line 2292, ../../app/assets/stylesheets/bootstrap.css */
+.fade {
+  -webkit-transition: opacity 0.15s linear;
+  -moz-transition: opacity 0.15s linear;
+  -ms-transition: opacity 0.15s linear;
+  -o-transition: opacity 0.15s linear;
+  transition: opacity 0.15s linear;
+  opacity: 0;
+}
+
+/* line 2300, ../../app/assets/stylesheets/bootstrap.css */
+.fade.in {
+  opacity: 1;
+}
+
+/* line 2303, ../../app/assets/stylesheets/bootstrap.css */
+.label {
+  padding: 1px 3px 2px;
+  background-color: #bfbfbf;
+  font-size: 9.75px;
+  font-weight: bold;
+  color: #ffffff;
+  text-transform: uppercase;
+  white-space: nowrap;
+  -webkit-border-radius: 3px;
+  -moz-border-radius: 3px;
+  border-radius: 3px;
+}
+
+/* line 2315, ../../app/assets/stylesheets/bootstrap.css */
+.label.important {
+  background-color: #c43c35;
+}
+
+/* line 2318, ../../app/assets/stylesheets/bootstrap.css */
+.label.warning {
+  background-color: #f89406;
+}
+
+/* line 2321, ../../app/assets/stylesheets/bootstrap.css */
+.label.success {
+  background-color: #46a546;
+}
+
+/* line 2324, ../../app/assets/stylesheets/bootstrap.css */
+.label.notice {
+  background-color: #62cffc;
+}
+
+/* line 2327, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid {
+  margin-left: -20px;
+  margin-bottom: 0;
+  zoom: 1;
+}
+
+/* line 2332, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid:before, .media-grid:after {
+  display: table;
+  content: "";
+  zoom: 1;
+  *display: inline;
+}
+
+/* line 2338, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid:after {
+  clear: both;
+}
+
+/* line 2341, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid li {
+  display: inline;
+}
+
+/* line 2344, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid a {
+  float: left;
+  padding: 4px;
+  margin: 0 0 20px 20px;
+  border: 1px solid #ddd;
+  -webkit-border-radius: 4px;
+  -moz-border-radius: 4px;
+  border-radius: 4px;
+  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
+  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
+  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
+}
+
+/* line 2356, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid a img {
+  display: block;
+}
+
+/* line 2359, ../../app/assets/stylesheets/bootstrap.css */
+.media-grid a:hover {
+  border-color: #0069d6;
+  -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);
+}
+
+/* line 1, ../../app/assets/stylesheets/bootstrap_codemav.css.scss */
+.topbar div > ul a, .nav a {
+  font-size: 18px;
+  margin-top: 6px;
+}
+
+/* line 6, ../../app/assets/stylesheets/bootstrap_codemav.css.scss */
+input {
+  box-sizing: initial;
+}
+
+/* line 10, ../../app/assets/stylesheets/bootstrap_codemav.css.scss */
+.current_user_photo {
+  margin-top: 12px;
+}
+
+/* line 14, ../../app/assets/stylesheets/bootstrap_codemav.css.scss */
+table {
+  border-left: 0px solid #fff;
+  border-right: 0px solid #fff;
+}
+/* line 18, ../../app/assets/stylesheets/bootstrap_codemav.css.scss */
+table tr td {
+  border-left: 0px solid #fff;
+  border-right: 0px solid #fff;
+}
+
+/* line 3, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#profile h1 .btn {
+  position: relative;
+  top: -6px;
+  left: 15px;
+}
+
+/* line 11, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#profile_pic {
+  border: 1px solid #b6b6b6;
+}
+
+/* line 17, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points {
+  margin-left: 0px;
+  margin-bottom: 65px;
+}
+/* line 20, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points li {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #eaeaea;
+  color: #818181;
+  float: left;
+  text-align: center;
+  padding: 5px;
+  margin-right: 5px;
+  margin-top: 3px;
+}
+/* line 24, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points li a {
+  color: #818181;
+}
+/* line 32, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points li .image {
+  float: left;
+}
+/* line 35, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points li .points {
+  font-weight: bold;
+  font-size: 13pt;
+}
+/* line 39, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points li .description {
+  font-size: 10pt;
+}
+/* line 43, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points .selected {
+  background: #373737;
+  color: white;
+}
+/* line 46, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+#points .selected a {
+  color: white;
+}
+
+/* line 53, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.tags .tag {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  border: 1px solid #EAEAEA;
+  padding: 3px;
+  font-size: 10pt;
+  float: left;
+  margin-right: 10px;
+}
+/* line 54, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.tags .tag .tag_score {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #EAEAEA;
+  float: left;
+  margin-right: 5px;
+  color: #686868;
+  padding: 1px;
+  font-size: 9pt;
+  font-weight: bold;
+}
+
+/* line 73, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+section {
+  margin-bottom: 20px;
+}
+
+/* line 78, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.coder_wall_badges li img {
+  width: 90px;
+  height: 90px;
+}
+
+/* line 85, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details h3 {
+  margin-top: 19px;
+  margin-bottom: 4px;
+}
+/* line 89, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details table {
+  border: 0px solid #333333;
+  border-top: 1px solid #d0d0d0;
+}
+/* line 92, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details table tr {
+  height: 68px;
+}
+/* line 94, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details table tr td {
+  border: 0px solid #333333;
+  border-bottom: 1px solid #d0d0d0;
+  padding: 6px;
+}
+/* line 101, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details .repo_description {
+  font-size: 12px;
+}
+/* line 104, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details .points {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #eaeaea;
+  color: #818181;
+  padding: 10px;
+  margin-right: 10px;
+  text-align: center;
+}
+/* line 111, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details .points .number {
+  font-weight: bold;
+}
+/* line 114, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.code_details .points .description {
+  font-size: 12px;
+}
+
+/* line 122, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+table#accounts tr td {
+  vertical-align: middle;
+  font-size: 16px;
+  border-right: 0px solid #fff;
+  border-left: 0px solid #fff;
+}
+
+/* line 136, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section h3 {
+  margin-top: 19px;
+  margin-bottom: 4px;
+}
+/* line 140, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section table {
+  border: 0px solid #333333;
+  border-top: 1px solid #d0d0d0;
+}
+/* line 143, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section table tr {
+  height: 68px;
+}
+/* line 145, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section table tr td {
+  border: 0px solid #333333;
+  border-bottom: 1px solid #d0d0d0;
+  padding: 6px;
+}
+/* line 152, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section .repo_description {
+  font-size: 12px;
+}
+/* line 155, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section .points {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #eaeaea;
+  color: #818181;
+  padding: 10px;
+  margin-right: 10px;
+  text-align: center;
+}
+/* line 162, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section .points .number {
+  font-weight: bold;
+}
+/* line 165, ../../app/assets/stylesheets/bootstrap_profile.css.scss */
+.profile_section .points .description {
+  font-size: 12px;
+}
+
+/* line 3, ../../app/assets/stylesheets/profile_experience.css.scss */
+#jobs ul li.job {
+  margin-bottom: 31px;
+}
+
+/* line 4, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results {
+  margin-bottom: 10px;
+}
+/* line 6, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results img.profile_pic {
+  background: #fff;
+  padding: 3px;
+  border: 1px solid #eaeaea;
+}
+/* line 12, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .profile_info .profile_name {
+  font-size: 16pt;
+}
+/* line 15, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .profile_info .profile_username {
+  font-size: 10pt;
+  margin-top: 5px;
+}
+/* line 22, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .points_and_tags .points {
+  margin-bottom: 6px;
+}
+/* line 24, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .points_and_tags .points li {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #eaeaea;
+  color: #818181;
+  float: left;
+  text-align: center;
+  padding: 5px;
+  margin-right: 5px;
+  margin-top: 3px;
+}
+/* line 33, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .points_and_tags .points li .image {
+  float: left;
+}
+/* line 36, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .points_and_tags .points li .points {
+  font-weight: bold;
+  font-size: 13pt;
+  text-align: center;
+}
+/* line 41, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .points_and_tags .points li .description {
+  font-size: 10pt;
+}
+/* line 45, ../../app/assets/stylesheets/profile_search.css.scss */
+.profile_search_results .points_and_tags .points .selected {
+  background: #373737;
+  color: white;
+}
+
+/* line 1, ../../app/assets/stylesheets/tags.css.scss */
+ul.tags {
+  margin-top: 6px;
+}
+/* line 3, ../../app/assets/stylesheets/tags.css.scss */
+ul.tags li {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  border: 1px solid #EAEAEA;
+  padding: 3px;
+  font-size: 10pt;
+  display: inline;
+  margin-right: 10px;
+}
+/* line 10, ../../app/assets/stylesheets/tags.css.scss */
+ul.tags li .tag_score {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #EAEAEA;
+  display: inline;
+  margin-right: 5px;
+  color: #686868;
+  padding: 1px;
+  font-size: 9pt;
+  font-weight: bold;
+}
+
+/* line 2, ../../app/assets/stylesheets/profile_speaking.css.scss */
+.talks .talk {
+  margin-bottom: 10px;
+}
+/* line 5, ../../app/assets/stylesheets/profile_speaking.css.scss */
+.talks img {
+  border: 1px solid #DDD;
+}
+
+/* line 2, ../../app/assets/stylesheets/profile_social.css.scss */
+table#followings .points {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  background: #eaeaea;
+  color: #818181;
+  text-align: center;
+  padding: 6px;
+  font-weight: bold;
+  font-size: 110%;
+  width: 85px;
+}
+/* line 11, ../../app/assets/stylesheets/profile_social.css.scss */
+table#followings .points img {
+  float: left;
+}
+/* line 14, ../../app/assets/stylesheets/profile_social.css.scss */
+table#followings .points p {
+  font-size: 80%;
+  margin-bottom: 0px;
+}
+
+/* line 2, ../../app/assets/stylesheets/syncable_profile.css.scss */
+#syncables h3 {
+  border-bottom: 1px solid #ddd;
+}
+/* line 5, ../../app/assets/stylesheets/syncable_profile.css.scss */
+#syncables section {
+  margin-bottom: 42px;
+}
+/* line 8, ../../app/assets/stylesheets/syncable_profile.css.scss */
+#syncables ul {
+  margin-top: 10px;
+}
+/* line 10, ../../app/assets/stylesheets/syncable_profile.css.scss */
+#syncables ul li {
+  margin-bottom: 16px;
+}
+/* line 15, ../../app/assets/stylesheets/syncable_profile.css.scss */
+#syncables ul li input[type=text] {
+  margin-top: 6px;
+}
+
+/* line 22, ../../app/assets/stylesheets/syncable_profile.css.scss */
+.sync_error {
+  border-color: #EE5F5B;
+}
+
+/* line 25, ../../app/assets/stylesheets/syncable_profile.css.scss */
+.sync_error_msg {
+  color: #EE5F5B;
+}
+
+/* line 29, ../../app/assets/stylesheets/syncable_profile.css.scss */
+.sync_actions {
+  padding-top: 5px;
+}
+
+/* line 2, ../../app/assets/stylesheets/talk_search.css.scss */
+#talk_search_results .talk {
+  margin-bottom: 10px;
+}
+/* line 5, ../../app/assets/stylesheets/talk_search.css.scss */
+#talk_search_results img {
+  border: 1px solid #DDD;
+}
+
+/* line 1, ../../app/assets/stylesheets/activity.css.scss */
+#activity_loader {
+  margin-left: 265px;
+}
+
+/* line 5, ../../app/assets/stylesheets/activity.css.scss */
+#activity_list {
+  margin-left: 0px;
+}
+/* line 7, ../../app/assets/stylesheets/activity.css.scss */
+#activity_list li {
+  padding-top: 10px;
+  padding-bottom: 10px;
+  border-top: 1px solid #ccc;
+}
+
+/* line 2, ../../app/assets/stylesheets/talk.css.scss */
+#talk .score_title {
+  padding-left: 10px;
+}
+/* line 6, ../../app/assets/stylesheets/talk.css.scss */
+#talk .score {
+  cell-padding: 5px;
+}
+/* line 8, ../../app/assets/stylesheets/talk.css.scss */
+#talk .score p {
+  background: #373737;
+  color: white;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  padding: 5px;
+  height: 30px;
+  width: 45px;
+  text-align: center;
+  padding-top: 10px;
+  font-size: 14pt;
+  font-weight: bold;
+}
+/* line 21, ../../app/assets/stylesheets/talk.css.scss */
+#talk table {
+  border: 0px solid #fff;
+}
+/* line 24, ../../app/assets/stylesheets/talk.css.scss */
+#talk table tr td {
+  border: 0px solid #fff;
+}
+
+/* line 1, ../../app/assets/stylesheets/skill_pie.css.scss */
+.skill_pie_label {
+  fill: #000;
+  stroke-width: 0px;
+}
+
+/* line 5, ../../app/assets/stylesheets/skill_pie.css.scss */
+.ruby {
+  fill: #CB3125;
+  stroke: #fff;
+}
+
+/* line 9, ../../app/assets/stylesheets/skill_pie.css.scss */
+.csharp {
+  fill: #286CE2;
+  stroke: #fff;
+}
+
+/* line 1, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart {
+  margin-bottom: 16px;
+}
+/* line 3, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart .axis {
+  shape-rendering: crispEdges;
+}
+/* line 7, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart .y.axis line {
+  stroke: #ddd;
+}
+/* line 11, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart .x.axis line {
+  opacity: 0;
+}
+/* line 15, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart .axis path {
+  fill: none;
+  stroke-width: .5px;
+}
+/* line 20, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart path.line {
+  fill: none;
+  stroke: blue;
+  stroke-width: .5px;
+}
+/* line 26, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart path.area {
+  opacity: .6;
+}
+/* line 30, ../../app/assets/stylesheets/dev_journey.css.scss */
+#dev_journey_chart .job_start_line {
+  stroke: #000;
+  opacity: 0.9;
+}
+
+/* line 1, ../../vendor/assets/stylesheets/tagit-blue.css */
+.ui-autocomplete {
+  background-color: #fff;
+  position: absolute;
+  cursor: default;
+  list-style: none;
+  margin: 25px 0 0;
+  padding: 0;
+  border: 1px solid #E5E5E5;
+  border-top: none;
+  -moz-border-radius: 0 0 10px 10px;
+  border-radius: 0 0 10px 10px;
+  -moz-box-shadow: 0 3px 5px #888;
+  -webkit-box-shadow: 0 3px 5px #888;
+  box-shadow: 0 3px 5px #888;
+  font-size: 12px;
+}
+
+/* line 18, ../../vendor/assets/stylesheets/tagit-blue.css */
+.ui-autocomplete .ui-menu-item {
+  padding: 0;
+  margin: 0;
+}
+
+/* line 23, ../../vendor/assets/stylesheets/tagit-blue.css */
+.ui-autocomplete .ui-menu-item a {
+  display: block;
+  padding: 4px 6px;
+  margin: 0;
+  text-decoration: none;
+  line-height: 12px;
+  border-bottom: 1px solid #E5E5E5;
+  border-top: 1px solid #fff;
+  color: #78959D;
+}
+
+/* line 36, ../../vendor/assets/stylesheets/tagit-blue.css */
+.ui-autocomplete .ui-menu-item a.ui-state-hover,
+.ui-autocomplete .ui-menu-item a.ui-state-active {
+  background-color: #c0d1e2;
+  color: #555;
+  border-color: #a6cef7;
+}
+
+/* line 42, ../../vendor/assets/stylesheets/tagit-blue.css */
+.ui-autocomplete-loading {
+  background: white url(ui-anim_basic_16x16.gif) right center no-repeat;
+}
+
+/* line 46, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit {
+  cursor: text;
+  overflow: auto;
+  font-size: 14px;
+  width: 97%;
+  padding: 3px;
+  margin-top: 2px;
+  margin-right: 6px;
+  margin-bottom: 16px;
+  border: 1px solid #E5E5E5;
+  background: #fff;
+  color: #555;
+}
+
+/* line 60, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li {
+  -moz-border-radius: 5px;
+  border-radius: 5px;
+  display: block;
+  float: left;
+  margin: 2px 5px 2px 0;
+  position: relative;
+}
+
+/* line 69, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-choice {
+  background-color: #DEE7F8;
+  border: 1px solid #CAD8F3;
+  padding: 2px 13px 3px 4px;
+}
+
+/* line 75, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-choice.selected {
+  background-color: #f5b0b0;
+  border-color: #f76464;
+}
+
+/* line 80, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-choice:hover {
+  background-color: #bbcef1;
+  border-color: #6d95e0;
+}
+
+/* line 85, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-new {
+  padding: 2px 4px 3px;
+  padding: 2px 4px 1px;
+  padding: 2px 4px 1px 0;
+}
+
+/* line 91, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-choice input {
+  display: block;
+  float: left;
+  margin: 0 5px 0 0;
+  padding-top: 2px;
+  padding-bottom: 2px;
+}
+
+/* line 99, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-choice a.tagit-close {
+  color: #777777;
+  cursor: pointer;
+  font-size: 12px;
+  font-weight: bold;
+  outline: medium none;
+  padding: 2px 0 2px 3px;
+  text-decoration: none;
+  position: absolute;
+  display: block;
+  top: 0;
+  right: 3px;
+  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.7);
+}
+
+/* line 114, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit li.tagit-choice a.tagit-close:hover {
+  color: #535353;
+}
+
+/* line 118, ../../vendor/assets/stylesheets/tagit-blue.css */
+ul.tagit input[type="text"] {
+  -moz-box-sizing: border-box;
+  border: none !important;
+  margin: 0 !important;
+  padding: 0 !important;
+  width: inherit !important;
+  outline: none;
+  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
+  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
+  -ms-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;
+  -webkit-box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0.1);
+  -moz-box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0.1);
+  box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0.1);
+}
+
+/* line 135, ../../vendor/assets/stylesheets/tagit-blue.css */
+.tagit-hiddenSelect {
+  display: none;
+}
+
+/*
+ * This is a manifest file that'll automatically include all the stylesheets available in this directory
+ * and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
+ * the top of the compiled file, but it's generally better to create a new file per style scope.
+ *
+*/
+/* line 41, ../../app/assets/stylesheets/application.css.scss */
+.profile_pic {
+  width: 90px;
+}
+
+/* line 45, ../../app/assets/stylesheets/application.css.scss */
+#content {
+  margin-top: 80px;
+}
diff --git a/public/assets/application.css.gz b/public/assets/application.css.gz
new file mode 100644
index 0000000000000000000000000000000000000000..e3df997f4e5f816e5f1b4ec35a9cb7a308a36ae8
GIT binary patch
literal 13275
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
Z7()1*t<}Zq?lA%Je*vZ5D>^-K0RYx0@pk|K

literal 0
HcmV?d00001

diff --git a/public/assets/application.js b/public/assets/application.js
new file mode 100644
index 0000000..cd8ac2f
--- /dev/null
+++ b/public/assets/application.js
@@ -0,0 +1,19531 @@
+/*!
+ * jQuery JavaScript Library v1.8.3
+ * http://jquery.com/
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ *
+ * Copyright 2012 jQuery Foundation and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: Tue Nov 13 2012 08:20:33 GMT-0500 (Eastern Standard Time)
+ */
+
+(function( window, undefined ) {
+var
+	// A central reference to the root jQuery(document)
+	rootjQuery,
+
+	// The deferred used on DOM ready
+	readyList,
+
+	// Use the correct document accordingly with window argument (sandbox)
+	document = window.document,
+	location = window.location,
+	navigator = window.navigator,
+
+	// Map over jQuery in case of overwrite
+	_jQuery = window.jQuery,
+
+	// Map over the $ in case of overwrite
+	_$ = window.$,
+
+	// Save a reference to some core methods
+	core_push = Array.prototype.push,
+	core_slice = Array.prototype.slice,
+	core_indexOf = Array.prototype.indexOf,
+	core_toString = Object.prototype.toString,
+	core_hasOwn = Object.prototype.hasOwnProperty,
+	core_trim = String.prototype.trim,
+
+	// Define a local copy of jQuery
+	jQuery = function( selector, context ) {
+		// The jQuery object is actually just the init constructor 'enhanced'
+		return new jQuery.fn.init( selector, context, rootjQuery );
+	},
+
+	// Used for matching numbers
+	core_pnum = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,
+
+	// Used for detecting and trimming whitespace
+	core_rnotwhite = /\S/,
+	core_rspace = /\s+/,
+
+	// Make sure we trim BOM and NBSP (here's looking at you, Safari 5.0 and IE)
+	rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
+
+	// A simple way to check for HTML strings
+	// Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
+	rquickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
+
+	// Match a standalone tag
+	rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
+
+	// JSON RegExp
+	rvalidchars = /^[\],:{}\s]*$/,
+	rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,
+	rvalidescape = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
+	rvalidtokens = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,
+
+	// Matches dashed string for camelizing
+	rmsPrefix = /^-ms-/,
+	rdashAlpha = /-([\da-z])/gi,
+
+	// Used by jQuery.camelCase as callback to replace()
+	fcamelCase = function( all, letter ) {
+		return ( letter + "" ).toUpperCase();
+	},
+
+	// The ready event handler and self cleanup method
+	DOMContentLoaded = function() {
+		if ( document.addEventListener ) {
+			document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
+			jQuery.ready();
+		} else if ( document.readyState === "complete" ) {
+			// we're here because readyState === "complete" in oldIE
+			// which is good enough for us to call the dom ready!
+			document.detachEvent( "onreadystatechange", DOMContentLoaded );
+			jQuery.ready();
+		}
+	},
+
+	// [[Class]] -> type pairs
+	class2type = {};
+
+jQuery.fn = jQuery.prototype = {
+	constructor: jQuery,
+	init: function( selector, context, rootjQuery ) {
+		var match, elem, ret, doc;
+
+		// Handle $(""), $(null), $(undefined), $(false)
+		if ( !selector ) {
+			return this;
+		}
+
+		// Handle $(DOMElement)
+		if ( selector.nodeType ) {
+			this.context = this[0] = selector;
+			this.length = 1;
+			return this;
+		}
+
+		// Handle HTML strings
+		if ( typeof selector === "string" ) {
+			if ( selector.charAt(0) === "<" && selector.charAt( selector.length - 1 ) === ">" && selector.length >= 3 ) {
+				// Assume that strings that start and end with <> are HTML and skip the regex check
+				match = [ null, selector, null ];
+
+			} else {
+				match = rquickExpr.exec( selector );
+			}
+
+			// Match html or make sure no context is specified for #id
+			if ( match && (match[1] || !context) ) {
+
+				// HANDLE: $(html) -> $(array)
+				if ( match[1] ) {
+					context = context instanceof jQuery ? context[0] : context;
+					doc = ( context && context.nodeType ? context.ownerDocument || context : document );
+
+					// scripts is true for back-compat
+					selector = jQuery.parseHTML( match[1], doc, true );
+					if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) {
+						this.attr.call( selector, context, true );
+					}
+
+					return jQuery.merge( this, selector );
+
+				// HANDLE: $(#id)
+				} else {
+					elem = document.getElementById( match[2] );
+
+					// Check parentNode to catch when Blackberry 4.6 returns
+					// nodes that are no longer in the document #6963
+					if ( elem && elem.parentNode ) {
+						// Handle the case where IE and Opera return items
+						// by name instead of ID
+						if ( elem.id !== match[2] ) {
+							return rootjQuery.find( selector );
+						}
+
+						// Otherwise, we inject the element directly into the jQuery object
+						this.length = 1;
+						this[0] = elem;
+					}
+
+					this.context = document;
+					this.selector = selector;
+					return this;
+				}
+
+			// HANDLE: $(expr, $(...))
+			} else if ( !context || context.jquery ) {
+				return ( context || rootjQuery ).find( selector );
+
+			// HANDLE: $(expr, context)
+			// (which is just equivalent to: $(context).find(expr)
+			} else {
+				return this.constructor( context ).find( selector );
+			}
+
+		// HANDLE: $(function)
+		// Shortcut for document ready
+		} else if ( jQuery.isFunction( selector ) ) {
+			return rootjQuery.ready( selector );
+		}
+
+		if ( selector.selector !== undefined ) {
+			this.selector = selector.selector;
+			this.context = selector.context;
+		}
+
+		return jQuery.makeArray( selector, this );
+	},
+
+	// Start with an empty selector
+	selector: "",
+
+	// The current version of jQuery being used
+	jquery: "1.8.3",
+
+	// The default length of a jQuery object is 0
+	length: 0,
+
+	// The number of elements contained in the matched element set
+	size: function() {
+		return this.length;
+	},
+
+	toArray: function() {
+		return core_slice.call( this );
+	},
+
+	// Get the Nth element in the matched element set OR
+	// Get the whole matched element set as a clean array
+	get: function( num ) {
+		return num == null ?
+
+			// Return a 'clean' array
+			this.toArray() :
+
+			// Return just the object
+			( num < 0 ? this[ this.length + num ] : this[ num ] );
+	},
+
+	// Take an array of elements and push it onto the stack
+	// (returning the new matched element set)
+	pushStack: function( elems, name, selector ) {
+
+		// Build a new jQuery matched element set
+		var ret = jQuery.merge( this.constructor(), elems );
+
+		// Add the old object onto the stack (as a reference)
+		ret.prevObject = this;
+
+		ret.context = this.context;
+
+		if ( name === "find" ) {
+			ret.selector = this.selector + ( this.selector ? " " : "" ) + selector;
+		} else if ( name ) {
+			ret.selector = this.selector + "." + name + "(" + selector + ")";
+		}
+
+		// Return the newly-formed element set
+		return ret;
+	},
+
+	// Execute a callback for every element in the matched set.
+	// (You can seed the arguments with an array of args, but this is
+	// only used internally.)
+	each: function( callback, args ) {
+		return jQuery.each( this, callback, args );
+	},
+
+	ready: function( fn ) {
+		// Add the callback
+		jQuery.ready.promise().done( fn );
+
+		return this;
+	},
+
+	eq: function( i ) {
+		i = +i;
+		return i === -1 ?
+			this.slice( i ) :
+			this.slice( i, i + 1 );
+	},
+
+	first: function() {
+		return this.eq( 0 );
+	},
+
+	last: function() {
+		return this.eq( -1 );
+	},
+
+	slice: function() {
+		return this.pushStack( core_slice.apply( this, arguments ),
+			"slice", core_slice.call(arguments).join(",") );
+	},
+
+	map: function( callback ) {
+		return this.pushStack( jQuery.map(this, function( elem, i ) {
+			return callback.call( elem, i, elem );
+		}));
+	},
+
+	end: function() {
+		return this.prevObject || this.constructor(null);
+	},
+
+	// For internal use only.
+	// Behaves like an Array's method, not like a jQuery method.
+	push: core_push,
+	sort: [].sort,
+	splice: [].splice
+};
+
+// Give the init function the jQuery prototype for later instantiation
+jQuery.fn.init.prototype = jQuery.fn;
+
+jQuery.extend = jQuery.fn.extend = function() {
+	var options, name, src, copy, copyIsArray, clone,
+		target = arguments[0] || {},
+		i = 1,
+		length = arguments.length,
+		deep = false;
+
+	// Handle a deep copy situation
+	if ( typeof target === "boolean" ) {
+		deep = target;
+		target = arguments[1] || {};
+		// skip the boolean and the target
+		i = 2;
+	}
+
+	// Handle case when target is a string or something (possible in deep copy)
+	if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
+		target = {};
+	}
+
+	// extend jQuery itself if only one argument is passed
+	if ( length === i ) {
+		target = this;
+		--i;
+	}
+
+	for ( ; i < length; i++ ) {
+		// Only deal with non-null/undefined values
+		if ( (options = arguments[ i ]) != null ) {
+			// Extend the base object
+			for ( name in options ) {
+				src = target[ name ];
+				copy = options[ name ];
+
+				// Prevent never-ending loop
+				if ( target === copy ) {
+					continue;
+				}
+
+				// Recurse if we're merging plain objects or arrays
+				if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
+					if ( copyIsArray ) {
+						copyIsArray = false;
+						clone = src && jQuery.isArray(src) ? src : [];
+
+					} else {
+						clone = src && jQuery.isPlainObject(src) ? src : {};
+					}
+
+					// Never move original objects, clone them
+					target[ name ] = jQuery.extend( deep, clone, copy );
+
+				// Don't bring in undefined values
+				} else if ( copy !== undefined ) {
+					target[ name ] = copy;
+				}
+			}
+		}
+	}
+
+	// Return the modified object
+	return target;
+};
+
+jQuery.extend({
+	noConflict: function( deep ) {
+		if ( window.$ === jQuery ) {
+			window.$ = _$;
+		}
+
+		if ( deep && window.jQuery === jQuery ) {
+			window.jQuery = _jQuery;
+		}
+
+		return jQuery;
+	},
+
+	// Is the DOM ready to be used? Set to true once it occurs.
+	isReady: false,
+
+	// A counter to track how many items to wait for before
+	// the ready event fires. See #6781
+	readyWait: 1,
+
+	// Hold (or release) the ready event
+	holdReady: function( hold ) {
+		if ( hold ) {
+			jQuery.readyWait++;
+		} else {
+			jQuery.ready( true );
+		}
+	},
+
+	// Handle when the DOM is ready
+	ready: function( wait ) {
+
+		// Abort if there are pending holds or we're already ready
+		if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
+			return;
+		}
+
+		// Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
+		if ( !document.body ) {
+			return setTimeout( jQuery.ready, 1 );
+		}
+
+		// Remember that the DOM is ready
+		jQuery.isReady = true;
+
+		// If a normal DOM Ready event fired, decrement, and wait if need be
+		if ( wait !== true && --jQuery.readyWait > 0 ) {
+			return;
+		}
+
+		// If there are functions bound, to execute
+		readyList.resolveWith( document, [ jQuery ] );
+
+		// Trigger any bound ready events
+		if ( jQuery.fn.trigger ) {
+			jQuery( document ).trigger("ready").off("ready");
+		}
+	},
+
+	// See test/unit/core.js for details concerning isFunction.
+	// Since version 1.3, DOM methods and functions like alert
+	// aren't supported. They return false on IE (#2968).
+	isFunction: function( obj ) {
+		return jQuery.type(obj) === "function";
+	},
+
+	isArray: Array.isArray || function( obj ) {
+		return jQuery.type(obj) === "array";
+	},
+
+	isWindow: function( obj ) {
+		return obj != null && obj == obj.window;
+	},
+
+	isNumeric: function( obj ) {
+		return !isNaN( parseFloat(obj) ) && isFinite( obj );
+	},
+
+	type: function( obj ) {
+		return obj == null ?
+			String( obj ) :
+			class2type[ core_toString.call(obj) ] || "object";
+	},
+
+	isPlainObject: function( obj ) {
+		// Must be an Object.
+		// Because of IE, we also have to check the presence of the constructor property.
+		// Make sure that DOM nodes and window objects don't pass through, as well
+		if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
+			return false;
+		}
+
+		try {
+			// Not own constructor property must be Object
+			if ( obj.constructor &&
+				!core_hasOwn.call(obj, "constructor") &&
+				!core_hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
+				return false;
+			}
+		} catch ( e ) {
+			// IE8,9 Will throw exceptions on certain host objects #9897
+			return false;
+		}
+
+		// Own properties are enumerated firstly, so to speed up,
+		// if last one is own, then all properties are own.
+
+		var key;
+		for ( key in obj ) {}
+
+		return key === undefined || core_hasOwn.call( obj, key );
+	},
+
+	isEmptyObject: function( obj ) {
+		var name;
+		for ( name in obj ) {
+			return false;
+		}
+		return true;
+	},
+
+	error: function( msg ) {
+		throw new Error( msg );
+	},
+
+	// data: string of html
+	// context (optional): If specified, the fragment will be created in this context, defaults to document
+	// scripts (optional): If true, will include scripts passed in the html string
+	parseHTML: function( data, context, scripts ) {
+		var parsed;
+		if ( !data || typeof data !== "string" ) {
+			return null;
+		}
+		if ( typeof context === "boolean" ) {
+			scripts = context;
+			context = 0;
+		}
+		context = context || document;
+
+		// Single tag
+		if ( (parsed = rsingleTag.exec( data )) ) {
+			return [ context.createElement( parsed[1] ) ];
+		}
+
+		parsed = jQuery.buildFragment( [ data ], context, scripts ? null : [] );
+		return jQuery.merge( [],
+			(parsed.cacheable ? jQuery.clone( parsed.fragment ) : parsed.fragment).childNodes );
+	},
+
+	parseJSON: function( data ) {
+		if ( !data || typeof data !== "string") {
+			return null;
+		}
+
+		// Make sure leading/trailing whitespace is removed (IE can't handle it)
+		data = jQuery.trim( data );
+
+		// Attempt to parse using the native JSON parser first
+		if ( window.JSON && window.JSON.parse ) {
+			return window.JSON.parse( data );
+		}
+
+		// Make sure the incoming data is actual JSON
+		// Logic borrowed from http://json.org/json2.js
+		if ( rvalidchars.test( data.replace( rvalidescape, "@" )
+			.replace( rvalidtokens, "]" )
+			.replace( rvalidbraces, "")) ) {
+
+			return ( new Function( "return " + data ) )();
+
+		}
+		jQuery.error( "Invalid JSON: " + data );
+	},
+
+	// Cross-browser xml parsing
+	parseXML: function( data ) {
+		var xml, tmp;
+		if ( !data || typeof data !== "string" ) {
+			return null;
+		}
+		try {
+			if ( window.DOMParser ) { // Standard
+				tmp = new DOMParser();
+				xml = tmp.parseFromString( data , "text/xml" );
+			} else { // IE
+				xml = new ActiveXObject( "Microsoft.XMLDOM" );
+				xml.async = "false";
+				xml.loadXML( data );
+			}
+		} catch( e ) {
+			xml = undefined;
+		}
+		if ( !xml || !xml.documentElement || xml.getElementsByTagName( "parsererror" ).length ) {
+			jQuery.error( "Invalid XML: " + data );
+		}
+		return xml;
+	},
+
+	noop: function() {},
+
+	// Evaluates a script in a global context
+	// Workarounds based on findings by Jim Driscoll
+	// http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context
+	globalEval: function( data ) {
+		if ( data && core_rnotwhite.test( data ) ) {
+			// We use execScript on Internet Explorer
+			// We use an anonymous function so that context is window
+			// rather than jQuery in Firefox
+			( window.execScript || function( data ) {
+				window[ "eval" ].call( window, data );
+			} )( data );
+		}
+	},
+
+	// Convert dashed to camelCase; used by the css and data modules
+	// Microsoft forgot to hump their vendor prefix (#9572)
+	camelCase: function( string ) {
+		return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
+	},
+
+	nodeName: function( elem, name ) {
+		return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
+	},
+
+	// args is for internal usage only
+	each: function( obj, callback, args ) {
+		var name,
+			i = 0,
+			length = obj.length,
+			isObj = length === undefined || jQuery.isFunction( obj );
+
+		if ( args ) {
+			if ( isObj ) {
+				for ( name in obj ) {
+					if ( callback.apply( obj[ name ], args ) === false ) {
+						break;
+					}
+				}
+			} else {
+				for ( ; i < length; ) {
+					if ( callback.apply( obj[ i++ ], args ) === false ) {
+						break;
+					}
+				}
+			}
+
+		// A special, fast, case for the most common use of each
+		} else {
+			if ( isObj ) {
+				for ( name in obj ) {
+					if ( callback.call( obj[ name ], name, obj[ name ] ) === false ) {
+						break;
+					}
+				}
+			} else {
+				for ( ; i < length; ) {
+					if ( callback.call( obj[ i ], i, obj[ i++ ] ) === false ) {
+						break;
+					}
+				}
+			}
+		}
+
+		return obj;
+	},
+
+	// Use native String.trim function wherever possible
+	trim: core_trim && !core_trim.call("\uFEFF\xA0") ?
+		function( text ) {
+			return text == null ?
+				"" :
+				core_trim.call( text );
+		} :
+
+		// Otherwise use our own trimming functionality
+		function( text ) {
+			return text == null ?
+				"" :
+				( text + "" ).replace( rtrim, "" );
+		},
+
+	// results is for internal usage only
+	makeArray: function( arr, results ) {
+		var type,
+			ret = results || [];
+
+		if ( arr != null ) {
+			// The window, strings (and functions) also have 'length'
+			// Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930
+			type = jQuery.type( arr );
+
+			if ( arr.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( arr ) ) {
+				core_push.call( ret, arr );
+			} else {
+				jQuery.merge( ret, arr );
+			}
+		}
+
+		return ret;
+	},
+
+	inArray: function( elem, arr, i ) {
+		var len;
+
+		if ( arr ) {
+			if ( core_indexOf ) {
+				return core_indexOf.call( arr, elem, i );
+			}
+
+			len = arr.length;
+			i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0;
+
+			for ( ; i < len; i++ ) {
+				// Skip accessing in sparse arrays
+				if ( i in arr && arr[ i ] === elem ) {
+					return i;
+				}
+			}
+		}
+
+		return -1;
+	},
+
+	merge: function( first, second ) {
+		var l = second.length,
+			i = first.length,
+			j = 0;
+
+		if ( typeof l === "number" ) {
+			for ( ; j < l; j++ ) {
+				first[ i++ ] = second[ j ];
+			}
+
+		} else {
+			while ( second[j] !== undefined ) {
+				first[ i++ ] = second[ j++ ];
+			}
+		}
+
+		first.length = i;
+
+		return first;
+	},
+
+	grep: function( elems, callback, inv ) {
+		var retVal,
+			ret = [],
+			i = 0,
+			length = elems.length;
+		inv = !!inv;
+
+		// Go through the array, only saving the items
+		// that pass the validator function
+		for ( ; i < length; i++ ) {
+			retVal = !!callback( elems[ i ], i );
+			if ( inv !== retVal ) {
+				ret.push( elems[ i ] );
+			}
+		}
+
+		return ret;
+	},
+
+	// arg is for internal usage only
+	map: function( elems, callback, arg ) {
+		var value, key,
+			ret = [],
+			i = 0,
+			length = elems.length,
+			// jquery objects are treated as arrays
+			isArray = elems instanceof jQuery || length !== undefined && typeof length === "number" && ( ( length > 0 && elems[ 0 ] && elems[ length -1 ] ) || length === 0 || jQuery.isArray( elems ) ) ;
+
+		// Go through the array, translating each of the items to their
+		if ( isArray ) {
+			for ( ; i < length; i++ ) {
+				value = callback( elems[ i ], i, arg );
+
+				if ( value != null ) {
+					ret[ ret.length ] = value;
+				}
+			}
+
+		// Go through every key on the object,
+		} else {
+			for ( key in elems ) {
+				value = callback( elems[ key ], key, arg );
+
+				if ( value != null ) {
+					ret[ ret.length ] = value;
+				}
+			}
+		}
+
+		// Flatten any nested arrays
+		return ret.concat.apply( [], ret );
+	},
+
+	// A global GUID counter for objects
+	guid: 1,
+
+	// Bind a function to a context, optionally partially applying any
+	// arguments.
+	proxy: function( fn, context ) {
+		var tmp, args, proxy;
+
+		if ( typeof context === "string" ) {
+			tmp = fn[ context ];
+			context = fn;
+			fn = tmp;
+		}
+
+		// Quick check to determine if target is callable, in the spec
+		// this throws a TypeError, but we will just return undefined.
+		if ( !jQuery.isFunction( fn ) ) {
+			return undefined;
+		}
+
+		// Simulated bind
+		args = core_slice.call( arguments, 2 );
+		proxy = function() {
+			return fn.apply( context, args.concat( core_slice.call( arguments ) ) );
+		};
+
+		// Set the guid of unique handler to the same of original handler, so it can be removed
+		proxy.guid = fn.guid = fn.guid || jQuery.guid++;
+
+		return proxy;
+	},
+
+	// Multifunctional method to get and set values of a collection
+	// The value/s can optionally be executed if it's a function
+	access: function( elems, fn, key, value, chainable, emptyGet, pass ) {
+		var exec,
+			bulk = key == null,
+			i = 0,
+			length = elems.length;
+
+		// Sets many values
+		if ( key && typeof key === "object" ) {
+			for ( i in key ) {
+				jQuery.access( elems, fn, i, key[i], 1, emptyGet, value );
+			}
+			chainable = 1;
+
+		// Sets one value
+		} else if ( value !== undefined ) {
+			// Optionally, function values get executed if exec is true
+			exec = pass === undefined && jQuery.isFunction( value );
+
+			if ( bulk ) {
+				// Bulk operations only iterate when executing function values
+				if ( exec ) {
+					exec = fn;
+					fn = function( elem, key, value ) {
+						return exec.call( jQuery( elem ), value );
+					};
+
+				// Otherwise they run against the entire set
+				} else {
+					fn.call( elems, value );
+					fn = null;
+				}
+			}
+
+			if ( fn ) {
+				for (; i < length; i++ ) {
+					fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
+				}
+			}
+
+			chainable = 1;
+		}
+
+		return chainable ?
+			elems :
+
+			// Gets
+			bulk ?
+				fn.call( elems ) :
+				length ? fn( elems[0], key ) : emptyGet;
+	},
+
+	now: function() {
+		return ( new Date() ).getTime();
+	}
+});
+
+jQuery.ready.promise = function( obj ) {
+	if ( !readyList ) {
+
+		readyList = jQuery.Deferred();
+
+		// Catch cases where $(document).ready() is called after the browser event has already occurred.
+		// we once tried to use readyState "interactive" here, but it caused issues like the one
+		// discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15
+		if ( document.readyState === "complete" ) {
+			// Handle it asynchronously to allow scripts the opportunity to delay ready
+			setTimeout( jQuery.ready, 1 );
+
+		// Standards-based browsers support DOMContentLoaded
+		} else if ( document.addEventListener ) {
+			// Use the handy event callback
+			document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false );
+
+			// A fallback to window.onload, that will always work
+			window.addEventListener( "load", jQuery.ready, false );
+
+		// If IE event model is used
+		} else {
+			// Ensure firing before onload, maybe late but safe also for iframes
+			document.attachEvent( "onreadystatechange", DOMContentLoaded );
+
+			// A fallback to window.onload, that will always work
+			window.attachEvent( "onload", jQuery.ready );
+
+			// If IE and not a frame
+			// continually check to see if the document is ready
+			var top = false;
+
+			try {
+				top = window.frameElement == null && document.documentElement;
+			} catch(e) {}
+
+			if ( top && top.doScroll ) {
+				(function doScrollCheck() {
+					if ( !jQuery.isReady ) {
+
+						try {
+							// Use the trick by Diego Perini
+							// http://javascript.nwbox.com/IEContentLoaded/
+							top.doScroll("left");
+						} catch(e) {
+							return setTimeout( doScrollCheck, 50 );
+						}
+
+						// and execute any waiting functions
+						jQuery.ready();
+					}
+				})();
+			}
+		}
+	}
+	return readyList.promise( obj );
+};
+
+// Populate the class2type map
+jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) {
+	class2type[ "[object " + name + "]" ] = name.toLowerCase();
+});
+
+// All jQuery objects should point back to these
+rootjQuery = jQuery(document);
+// String to Object options format cache
+var optionsCache = {};
+
+// Convert String-formatted options into Object-formatted ones and store in cache
+function createOptions( options ) {
+	var object = optionsCache[ options ] = {};
+	jQuery.each( options.split( core_rspace ), function( _, flag ) {
+		object[ flag ] = true;
+	});
+	return object;
+}
+
+/*
+ * Create a callback list using the following parameters:
+ *
+ *	options: an optional list of space-separated options that will change how
+ *			the callback list behaves or a more traditional option object
+ *
+ * By default a callback list will act like an event callback list and can be
+ * "fired" multiple times.
+ *
+ * Possible options:
+ *
+ *	once:			will ensure the callback list can only be fired once (like a Deferred)
+ *
+ *	memory:			will keep track of previous values and will call any callback added
+ *					after the list has been fired right away with the latest "memorized"
+ *					values (like a Deferred)
+ *
+ *	unique:			will ensure a callback can only be added once (no duplicate in the list)
+ *
+ *	stopOnFalse:	interrupt callings when a callback returns false
+ *
+ */
+jQuery.Callbacks = function( options ) {
+
+	// Convert options from String-formatted to Object-formatted if needed
+	// (we check in cache first)
+	options = typeof options === "string" ?
+		( optionsCache[ options ] || createOptions( options ) ) :
+		jQuery.extend( {}, options );
+
+	var // Last fire value (for non-forgettable lists)
+		memory,
+		// Flag to know if list was already fired
+		fired,
+		// Flag to know if list is currently firing
+		firing,
+		// First callback to fire (used internally by add and fireWith)
+		firingStart,
+		// End of the loop when firing
+		firingLength,
+		// Index of currently firing callback (modified by remove if needed)
+		firingIndex,
+		// Actual callback list
+		list = [],
+		// Stack of fire calls for repeatable lists
+		stack = !options.once && [],
+		// Fire callbacks
+		fire = function( data ) {
+			memory = options.memory && data;
+			fired = true;
+			firingIndex = firingStart || 0;
+			firingStart = 0;
+			firingLength = list.length;
+			firing = true;
+			for ( ; list && firingIndex < firingLength; firingIndex++ ) {
+				if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) {
+					memory = false; // To prevent further calls using add
+					break;
+				}
+			}
+			firing = false;
+			if ( list ) {
+				if ( stack ) {
+					if ( stack.length ) {
+						fire( stack.shift() );
+					}
+				} else if ( memory ) {
+					list = [];
+				} else {
+					self.disable();
+				}
+			}
+		},
+		// Actual Callbacks object
+		self = {
+			// Add a callback or a collection of callbacks to the list
+			add: function() {
+				if ( list ) {
+					// First, we save the current length
+					var start = list.length;
+					(function add( args ) {
+						jQuery.each( args, function( _, arg ) {
+							var type = jQuery.type( arg );
+							if ( type === "function" ) {
+								if ( !options.unique || !self.has( arg ) ) {
+									list.push( arg );
+								}
+							} else if ( arg && arg.length && type !== "string" ) {
+								// Inspect recursively
+								add( arg );
+							}
+						});
+					})( arguments );
+					// Do we need to add the callbacks to the
+					// current firing batch?
+					if ( firing ) {
+						firingLength = list.length;
+					// With memory, if we're not firing then
+					// we should call right away
+					} else if ( memory ) {
+						firingStart = start;
+						fire( memory );
+					}
+				}
+				return this;
+			},
+			// Remove a callback from the list
+			remove: function() {
+				if ( list ) {
+					jQuery.each( arguments, function( _, arg ) {
+						var index;
+						while( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
+							list.splice( index, 1 );
+							// Handle firing indexes
+							if ( firing ) {
+								if ( index <= firingLength ) {
+									firingLength--;
+								}
+								if ( index <= firingIndex ) {
+									firingIndex--;
+								}
+							}
+						}
+					});
+				}
+				return this;
+			},
+			// Control if a given callback is in the list
+			has: function( fn ) {
+				return jQuery.inArray( fn, list ) > -1;
+			},
+			// Remove all callbacks from the list
+			empty: function() {
+				list = [];
+				return this;
+			},
+			// Have the list do nothing anymore
+			disable: function() {
+				list = stack = memory = undefined;
+				return this;
+			},
+			// Is it disabled?
+			disabled: function() {
+				return !list;
+			},
+			// Lock the list in its current state
+			lock: function() {
+				stack = undefined;
+				if ( !memory ) {
+					self.disable();
+				}
+				return this;
+			},
+			// Is it locked?
+			locked: function() {
+				return !stack;
+			},
+			// Call all callbacks with the given context and arguments
+			fireWith: function( context, args ) {
+				args = args || [];
+				args = [ context, args.slice ? args.slice() : args ];
+				if ( list && ( !fired || stack ) ) {
+					if ( firing ) {
+						stack.push( args );
+					} else {
+						fire( args );
+					}
+				}
+				return this;
+			},
+			// Call all the callbacks with the given arguments
+			fire: function() {
+				self.fireWith( this, arguments );
+				return this;
+			},
+			// To know if the callbacks have already been called at least once
+			fired: function() {
+				return !!fired;
+			}
+		};
+
+	return self;
+};
+jQuery.extend({
+
+	Deferred: function( func ) {
+		var tuples = [
+				// action, add listener, listener list, final state
+				[ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ],
+				[ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ],
+				[ "notify", "progress", jQuery.Callbacks("memory") ]
+			],
+			state = "pending",
+			promise = {
+				state: function() {
+					return state;
+				},
+				always: function() {
+					deferred.done( arguments ).fail( arguments );
+					return this;
+				},
+				then: function( /* fnDone, fnFail, fnProgress */ ) {
+					var fns = arguments;
+					return jQuery.Deferred(function( newDefer ) {
+						jQuery.each( tuples, function( i, tuple ) {
+							var action = tuple[ 0 ],
+								fn = fns[ i ];
+							// deferred[ done | fail | progress ] for forwarding actions to newDefer
+							deferred[ tuple[1] ]( jQuery.isFunction( fn ) ?
+								function() {
+									var returned = fn.apply( this, arguments );
+									if ( returned && jQuery.isFunction( returned.promise ) ) {
+										returned.promise()
+											.done( newDefer.resolve )
+											.fail( newDefer.reject )
+											.progress( newDefer.notify );
+									} else {
+										newDefer[ action + "With" ]( this === deferred ? newDefer : this, [ returned ] );
+									}
+								} :
+								newDefer[ action ]
+							);
+						});
+						fns = null;
+					}).promise();
+				},
+				// Get a promise for this deferred
+				// If obj is provided, the promise aspect is added to the object
+				promise: function( obj ) {
+					return obj != null ? jQuery.extend( obj, promise ) : promise;
+				}
+			},
+			deferred = {};
+
+		// Keep pipe for back-compat
+		promise.pipe = promise.then;
+
+		// Add list-specific methods
+		jQuery.each( tuples, function( i, tuple ) {
+			var list = tuple[ 2 ],
+				stateString = tuple[ 3 ];
+
+			// promise[ done | fail | progress ] = list.add
+			promise[ tuple[1] ] = list.add;
+
+			// Handle state
+			if ( stateString ) {
+				list.add(function() {
+					// state = [ resolved | rejected ]
+					state = stateString;
+
+				// [ reject_list | resolve_list ].disable; progress_list.lock
+				}, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );
+			}
+
+			// deferred[ resolve | reject | notify ] = list.fire
+			deferred[ tuple[0] ] = list.fire;
+			deferred[ tuple[0] + "With" ] = list.fireWith;
+		});
+
+		// Make the deferred a promise
+		promise.promise( deferred );
+
+		// Call given func if any
+		if ( func ) {
+			func.call( deferred, deferred );
+		}
+
+		// All done!
+		return deferred;
+	},
+
+	// Deferred helper
+	when: function( subordinate /* , ..., subordinateN */ ) {
+		var i = 0,
+			resolveValues = core_slice.call( arguments ),
+			length = resolveValues.length,
+
+			// the count of uncompleted subordinates
+			remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0,
+
+			// the master Deferred. If resolveValues consist of only a single Deferred, just use that.
+			deferred = remaining === 1 ? subordinate : jQuery.Deferred(),
+
+			// Update function for both resolve and progress values
+			updateFunc = function( i, contexts, values ) {
+				return function( value ) {
+					contexts[ i ] = this;
+					values[ i ] = arguments.length > 1 ? core_slice.call( arguments ) : value;
+					if( values === progressValues ) {
+						deferred.notifyWith( contexts, values );
+					} else if ( !( --remaining ) ) {
+						deferred.resolveWith( contexts, values );
+					}
+				};
+			},
+
+			progressValues, progressContexts, resolveContexts;
+
+		// add listeners to Deferred subordinates; treat others as resolved
+		if ( length > 1 ) {
+			progressValues = new Array( length );
+			progressContexts = new Array( length );
+			resolveContexts = new Array( length );
+			for ( ; i < length; i++ ) {
+				if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {
+					resolveValues[ i ].promise()
+						.done( updateFunc( i, resolveContexts, resolveValues ) )
+						.fail( deferred.reject )
+						.progress( updateFunc( i, progressContexts, progressValues ) );
+				} else {
+					--remaining;
+				}
+			}
+		}
+
+		// if we're not waiting on anything, resolve the master
+		if ( !remaining ) {
+			deferred.resolveWith( resolveContexts, resolveValues );
+		}
+
+		return deferred.promise();
+	}
+});
+jQuery.support = (function() {
+
+	var support,
+		all,
+		a,
+		select,
+		opt,
+		input,
+		fragment,
+		eventName,
+		i,
+		isSupported,
+		clickFn,
+		div = document.createElement("div");
+
+	// Setup
+	div.setAttribute( "className", "t" );
+	div.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
+
+	// Support tests won't run in some limited or non-browser environments
+	all = div.getElementsByTagName("*");
+	a = div.getElementsByTagName("a")[ 0 ];
+	if ( !all || !a || !all.length ) {
+		return {};
+	}
+
+	// First batch of tests
+	select = document.createElement("select");
+	opt = select.appendChild( document.createElement("option") );
+	input = div.getElementsByTagName("input")[ 0 ];
+
+	a.style.cssText = "top:1px;float:left;opacity:.5";
+	support = {
+		// IE strips leading whitespace when .innerHTML is used
+		leadingWhitespace: ( div.firstChild.nodeType === 3 ),
+
+		// Make sure that tbody elements aren't automatically inserted
+		// IE will insert them into empty tables
+		tbody: !div.getElementsByTagName("tbody").length,
+
+		// Make sure that link elements get serialized correctly by innerHTML
+		// This requires a wrapper element in IE
+		htmlSerialize: !!div.getElementsByTagName("link").length,
+
+		// Get the style information from getAttribute
+		// (IE uses .cssText instead)
+		style: /top/.test( a.getAttribute("style") ),
+
+		// Make sure that URLs aren't manipulated
+		// (IE normalizes it by default)
+		hrefNormalized: ( a.getAttribute("href") === "/a" ),
+
+		// Make sure that element opacity exists
+		// (IE uses filter instead)
+		// Use a regex to work around a WebKit issue. See #5145
+		opacity: /^0.5/.test( a.style.opacity ),
+
+		// Verify style float existence
+		// (IE uses styleFloat instead of cssFloat)
+		cssFloat: !!a.style.cssFloat,
+
+		// Make sure that if no value is specified for a checkbox
+		// that it defaults to "on".
+		// (WebKit defaults to "" instead)
+		checkOn: ( input.value === "on" ),
+
+		// Make sure that a selected-by-default option has a working selected property.
+		// (WebKit defaults to false instead of true, IE too, if it's in an optgroup)
+		optSelected: opt.selected,
+
+		// Test setAttribute on camelCase class. If it works, we need attrFixes when doing get/setAttribute (ie6/7)
+		getSetAttribute: div.className !== "t",
+
+		// Tests for enctype support on a form (#6743)
+		enctype: !!document.createElement("form").enctype,
+
+		// Makes sure cloning an html5 element does not cause problems
+		// Where outerHTML is undefined, this still works
+		html5Clone: document.createElement("nav").cloneNode( true ).outerHTML !== "<:nav></:nav>",
+
+		// jQuery.support.boxModel DEPRECATED in 1.8 since we don't support Quirks Mode
+		boxModel: ( document.compatMode === "CSS1Compat" ),
+
+		// Will be defined later
+		submitBubbles: true,
+		changeBubbles: true,
+		focusinBubbles: false,
+		deleteExpando: true,
+		noCloneEvent: true,
+		inlineBlockNeedsLayout: false,
+		shrinkWrapBlocks: false,
+		reliableMarginRight: true,
+		boxSizingReliable: true,
+		pixelPosition: false
+	};
+
+	// Make sure checked status is properly cloned
+	input.checked = true;
+	support.noCloneChecked = input.cloneNode( true ).checked;
+
+	// Make sure that the options inside disabled selects aren't marked as disabled
+	// (WebKit marks them as disabled)
+	select.disabled = true;
+	support.optDisabled = !opt.disabled;
+
+	// Test to see if it's possible to delete an expando from an element
+	// Fails in Internet Explorer
+	try {
+		delete div.test;
+	} catch( e ) {
+		support.deleteExpando = false;
+	}
+
+	if ( !div.addEventListener && div.attachEvent && div.fireEvent ) {
+		div.attachEvent( "onclick", clickFn = function() {
+			// Cloning a node shouldn't copy over any
+			// bound event handlers (IE does this)
+			support.noCloneEvent = false;
+		});
+		div.cloneNode( true ).fireEvent("onclick");
+		div.detachEvent( "onclick", clickFn );
+	}
+
+	// Check if a radio maintains its value
+	// after being appended to the DOM
+	input = document.createElement("input");
+	input.value = "t";
+	input.setAttribute( "type", "radio" );
+	support.radioValue = input.value === "t";
+
+	input.setAttribute( "checked", "checked" );
+
+	// #11217 - WebKit loses check when the name is after the checked attribute
+	input.setAttribute( "name", "t" );
+
+	div.appendChild( input );
+	fragment = document.createDocumentFragment();
+	fragment.appendChild( div.lastChild );
+
+	// WebKit doesn't clone checked state correctly in fragments
+	support.checkClone = fragment.cloneNode( true ).cloneNode( true ).lastChild.checked;
+
+	// Check if a disconnected checkbox will retain its checked
+	// value of true after appended to the DOM (IE6/7)
+	support.appendChecked = input.checked;
+
+	fragment.removeChild( input );
+	fragment.appendChild( div );
+
+	// Technique from Juriy Zaytsev
+	// http://perfectionkills.com/detecting-event-support-without-browser-sniffing/
+	// We only care about the case where non-standard event systems
+	// are used, namely in IE. Short-circuiting here helps us to
+	// avoid an eval call (in setAttribute) which can cause CSP
+	// to go haywire. See: https://developer.mozilla.org/en/Security/CSP
+	if ( div.attachEvent ) {
+		for ( i in {
+			submit: true,
+			change: true,
+			focusin: true
+		}) {
+			eventName = "on" + i;
+			isSupported = ( eventName in div );
+			if ( !isSupported ) {
+				div.setAttribute( eventName, "return;" );
+				isSupported = ( typeof div[ eventName ] === "function" );
+			}
+			support[ i + "Bubbles" ] = isSupported;
+		}
+	}
+
+	// Run tests that need a body at doc ready
+	jQuery(function() {
+		var container, div, tds, marginDiv,
+			divReset = "padding:0;margin:0;border:0;display:block;overflow:hidden;",
+			body = document.getElementsByTagName("body")[0];
+
+		if ( !body ) {
+			// Return for frameset docs that don't have a body
+			return;
+		}
+
+		container = document.createElement("div");
+		container.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";
+		body.insertBefore( container, body.firstChild );
+
+		// Construct the test element
+		div = document.createElement("div");
+		container.appendChild( div );
+
+		// Check if table cells still have offsetWidth/Height when they are set
+		// to display:none and there are still other visible table cells in a
+		// table row; if so, offsetWidth/Height are not reliable for use when
+		// determining if an element has been hidden directly using
+		// display:none (it is still safe to use offsets if a parent element is
+		// hidden; don safety goggles and see bug #4512 for more information).
+		// (only IE 8 fails this test)
+		div.innerHTML = "<table><tr><td></td><td>t</td></tr></table>";
+		tds = div.getElementsByTagName("td");
+		tds[ 0 ].style.cssText = "padding:0;margin:0;border:0;display:none";
+		isSupported = ( tds[ 0 ].offsetHeight === 0 );
+
+		tds[ 0 ].style.display = "";
+		tds[ 1 ].style.display = "none";
+
+		// Check if empty table cells still have offsetWidth/Height
+		// (IE <= 8 fail this test)
+		support.reliableHiddenOffsets = isSupported && ( tds[ 0 ].offsetHeight === 0 );
+
+		// Check box-sizing and margin behavior
+		div.innerHTML = "";
+		div.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";
+		support.boxSizing = ( div.offsetWidth === 4 );
+		support.doesNotIncludeMarginInBodyOffset = ( body.offsetTop !== 1 );
+
+		// NOTE: To any future maintainer, we've window.getComputedStyle
+		// because jsdom on node.js will break without it.
+		if ( window.getComputedStyle ) {
+			support.pixelPosition = ( window.getComputedStyle( div, null ) || {} ).top !== "1%";
+			support.boxSizingReliable = ( window.getComputedStyle( div, null ) || { width: "4px" } ).width === "4px";
+
+			// Check if div with explicit width and no margin-right incorrectly
+			// gets computed margin-right based on width of container. For more
+			// info see bug #3333
+			// Fails in WebKit before Feb 2011 nightlies
+			// WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
+			marginDiv = document.createElement("div");
+			marginDiv.style.cssText = div.style.cssText = divReset;
+			marginDiv.style.marginRight = marginDiv.style.width = "0";
+			div.style.width = "1px";
+			div.appendChild( marginDiv );
+			support.reliableMarginRight =
+				!parseFloat( ( window.getComputedStyle( marginDiv, null ) || {} ).marginRight );
+		}
+
+		if ( typeof div.style.zoom !== "undefined" ) {
+			// Check if natively block-level elements act like inline-block
+			// elements when setting their display to 'inline' and giving
+			// them layout
+			// (IE < 8 does this)
+			div.innerHTML = "";
+			div.style.cssText = divReset + "width:1px;padding:1px;display:inline;zoom:1";
+			support.inlineBlockNeedsLayout = ( div.offsetWidth === 3 );
+
+			// Check if elements with layout shrink-wrap their children
+			// (IE 6 does this)
+			div.style.display = "block";
+			div.style.overflow = "visible";
+			div.innerHTML = "<div></div>";
+			div.firstChild.style.width = "5px";
+			support.shrinkWrapBlocks = ( div.offsetWidth !== 3 );
+
+			container.style.zoom = 1;
+		}
+
+		// Null elements to avoid leaks in IE
+		body.removeChild( container );
+		container = div = tds = marginDiv = null;
+	});
+
+	// Null elements to avoid leaks in IE
+	fragment.removeChild( div );
+	all = a = select = opt = input = fragment = div = null;
+
+	return support;
+})();
+var rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
+	rmultiDash = /([A-Z])/g;
+
+jQuery.extend({
+	cache: {},
+
+	deletedIds: [],
+
+	// Remove at next major release (1.9/2.0)
+	uuid: 0,
+
+	// Unique for each copy of jQuery on the page
+	// Non-digits removed to match rinlinejQuery
+	expando: "jQuery" + ( jQuery.fn.jquery + Math.random() ).replace( /\D/g, "" ),
+
+	// The following elements throw uncatchable exceptions if you
+	// attempt to add expando properties to them.
+	noData: {
+		"embed": true,
+		// Ban all objects except for Flash (which handle expandos)
+		"object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
+		"applet": true
+	},
+
+	hasData: function( elem ) {
+		elem = elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ jQuery.expando ];
+		return !!elem && !isEmptyDataObject( elem );
+	},
+
+	data: function( elem, name, data, pvt /* Internal Use Only */ ) {
+		if ( !jQuery.acceptData( elem ) ) {
+			return;
+		}
+
+		var thisCache, ret,
+			internalKey = jQuery.expando,
+			getByName = typeof name === "string",
+
+			// We have to handle DOM nodes and JS objects differently because IE6-7
+			// can't GC object references properly across the DOM-JS boundary
+			isNode = elem.nodeType,
+
+			// Only DOM nodes need the global jQuery cache; JS object data is
+			// attached directly to the object so GC can occur automatically
+			cache = isNode ? jQuery.cache : elem,
+
+			// Only defining an ID for JS objects if its cache already exists allows
+			// the code to shortcut on the same path as a DOM node with no cache
+			id = isNode ? elem[ internalKey ] : elem[ internalKey ] && internalKey;
+
+		// Avoid doing any more work than we need to when trying to get data on an
+		// object that has no data at all
+		if ( (!id || !cache[id] || (!pvt && !cache[id].data)) && getByName && data === undefined ) {
+			return;
+		}
+
+		if ( !id ) {
+			// Only DOM nodes need a new unique ID for each element since their data
+			// ends up in the global cache
+			if ( isNode ) {
+				elem[ internalKey ] = id = jQuery.deletedIds.pop() || jQuery.guid++;
+			} else {
+				id = internalKey;
+			}
+		}
+
+		if ( !cache[ id ] ) {
+			cache[ id ] = {};
+
+			// Avoids exposing jQuery metadata on plain JS objects when the object
+			// is serialized using JSON.stringify
+			if ( !isNode ) {
+				cache[ id ].toJSON = jQuery.noop;
+			}
+		}
+
+		// An object can be passed to jQuery.data instead of a key/value pair; this gets
+		// shallow copied over onto the existing cache
+		if ( typeof name === "object" || typeof name === "function" ) {
+			if ( pvt ) {
+				cache[ id ] = jQuery.extend( cache[ id ], name );
+			} else {
+				cache[ id ].data = jQuery.extend( cache[ id ].data, name );
+			}
+		}
+
+		thisCache = cache[ id ];
+
+		// jQuery data() is stored in a separate object inside the object's internal data
+		// cache in order to avoid key collisions between internal data and user-defined
+		// data.
+		if ( !pvt ) {
+			if ( !thisCache.data ) {
+				thisCache.data = {};
+			}
+
+			thisCache = thisCache.data;
+		}
+
+		if ( data !== undefined ) {
+			thisCache[ jQuery.camelCase( name ) ] = data;
+		}
+
+		// Check for both converted-to-camel and non-converted data property names
+		// If a data property was specified
+		if ( getByName ) {
+
+			// First Try to find as-is property data
+			ret = thisCache[ name ];
+
+			// Test for null|undefined property data
+			if ( ret == null ) {
+
+				// Try to find the camelCased property
+				ret = thisCache[ jQuery.camelCase( name ) ];
+			}
+		} else {
+			ret = thisCache;
+		}
+
+		return ret;
+	},
+
+	removeData: function( elem, name, pvt /* Internal Use Only */ ) {
+		if ( !jQuery.acceptData( elem ) ) {
+			return;
+		}
+
+		var thisCache, i, l,
+
+			isNode = elem.nodeType,
+
+			// See jQuery.data for more information
+			cache = isNode ? jQuery.cache : elem,
+			id = isNode ? elem[ jQuery.expando ] : jQuery.expando;
+
+		// If there is already no cache entry for this object, there is no
+		// purpose in continuing
+		if ( !cache[ id ] ) {
+			return;
+		}
+
+		if ( name ) {
+
+			thisCache = pvt ? cache[ id ] : cache[ id ].data;
+
+			if ( thisCache ) {
+
+				// Support array or space separated string names for data keys
+				if ( !jQuery.isArray( name ) ) {
+
+					// try the string as a key before any manipulation
+					if ( name in thisCache ) {
+						name = [ name ];
+					} else {
+
+						// split the camel cased version by spaces unless a key with the spaces exists
+						name = jQuery.camelCase( name );
+						if ( name in thisCache ) {
+							name = [ name ];
+						} else {
+							name = name.split(" ");
+						}
+					}
+				}
+
+				for ( i = 0, l = name.length; i < l; i++ ) {
+					delete thisCache[ name[i] ];
+				}
+
+				// If there is no data left in the cache, we want to continue
+				// and let the cache object itself get destroyed
+				if ( !( pvt ? isEmptyDataObject : jQuery.isEmptyObject )( thisCache ) ) {
+					return;
+				}
+			}
+		}
+
+		// See jQuery.data for more information
+		if ( !pvt ) {
+			delete cache[ id ].data;
+
+			// Don't destroy the parent cache unless the internal data object
+			// had been the only thing left in it
+			if ( !isEmptyDataObject( cache[ id ] ) ) {
+				return;
+			}
+		}
+
+		// Destroy the cache
+		if ( isNode ) {
+			jQuery.cleanData( [ elem ], true );
+
+		// Use delete when supported for expandos or `cache` is not a window per isWindow (#10080)
+		} else if ( jQuery.support.deleteExpando || cache != cache.window ) {
+			delete cache[ id ];
+
+		// When all else fails, null
+		} else {
+			cache[ id ] = null;
+		}
+	},
+
+	// For internal use only.
+	_data: function( elem, name, data ) {
+		return jQuery.data( elem, name, data, true );
+	},
+
+	// A method for determining if a DOM node can handle the data expando
+	acceptData: function( elem ) {
+		var noData = elem.nodeName && jQuery.noData[ elem.nodeName.toLowerCase() ];
+
+		// nodes accept data unless otherwise specified; rejection can be conditional
+		return !noData || noData !== true && elem.getAttribute("classid") === noData;
+	}
+});
+
+jQuery.fn.extend({
+	data: function( key, value ) {
+		var parts, part, attr, name, l,
+			elem = this[0],
+			i = 0,
+			data = null;
+
+		// Gets all values
+		if ( key === undefined ) {
+			if ( this.length ) {
+				data = jQuery.data( elem );
+
+				if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) {
+					attr = elem.attributes;
+					for ( l = attr.length; i < l; i++ ) {
+						name = attr[i].name;
+
+						if ( !name.indexOf( "data-" ) ) {
+							name = jQuery.camelCase( name.substring(5) );
+
+							dataAttr( elem, name, data[ name ] );
+						}
+					}
+					jQuery._data( elem, "parsedAttrs", true );
+				}
+			}
+
+			return data;
+		}
+
+		// Sets multiple values
+		if ( typeof key === "object" ) {
+			return this.each(function() {
+				jQuery.data( this, key );
+			});
+		}
+
+		parts = key.split( ".", 2 );
+		parts[1] = parts[1] ? "." + parts[1] : "";
+		part = parts[1] + "!";
+
+		return jQuery.access( this, function( value ) {
+
+			if ( value === undefined ) {
+				data = this.triggerHandler( "getData" + part, [ parts[0] ] );
+
+				// Try to fetch any internally stored data first
+				if ( data === undefined && elem ) {
+					data = jQuery.data( elem, key );
+					data = dataAttr( elem, key, data );
+				}
+
+				return data === undefined && parts[1] ?
+					this.data( parts[0] ) :
+					data;
+			}
+
+			parts[1] = value;
+			this.each(function() {
+				var self = jQuery( this );
+
+				self.triggerHandler( "setData" + part, parts );
+				jQuery.data( this, key, value );
+				self.triggerHandler( "changeData" + part, parts );
+			});
+		}, null, value, arguments.length > 1, null, false );
+	},
+
+	removeData: function( key ) {
+		return this.each(function() {
+			jQuery.removeData( this, key );
+		});
+	}
+});
+
+function dataAttr( elem, key, data ) {
+	// If nothing was found internally, try to fetch any
+	// data from the HTML5 data-* attribute
+	if ( data === undefined && elem.nodeType === 1 ) {
+
+		var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();
+
+		data = elem.getAttribute( name );
+
+		if ( typeof data === "string" ) {
+			try {
+				data = data === "true" ? true :
+				data === "false" ? false :
+				data === "null" ? null :
+				// Only convert to a number if it doesn't change the string
+				+data + "" === data ? +data :
+				rbrace.test( data ) ? jQuery.parseJSON( data ) :
+					data;
+			} catch( e ) {}
+
+			// Make sure we set the data so it isn't changed later
+			jQuery.data( elem, key, data );
+
+		} else {
+			data = undefined;
+		}
+	}
+
+	return data;
+}
+
+// checks a cache object for emptiness
+function isEmptyDataObject( obj ) {
+	var name;
+	for ( name in obj ) {
+
+		// if the public data object is empty, the private is still empty
+		if ( name === "data" && jQuery.isEmptyObject( obj[name] ) ) {
+			continue;
+		}
+		if ( name !== "toJSON" ) {
+			return false;
+		}
+	}
+
+	return true;
+}
+jQuery.extend({
+	queue: function( elem, type, data ) {
+		var queue;
+
+		if ( elem ) {
+			type = ( type || "fx" ) + "queue";
+			queue = jQuery._data( elem, type );
+
+			// Speed up dequeue by getting out quickly if this is just a lookup
+			if ( data ) {
+				if ( !queue || jQuery.isArray(data) ) {
+					queue = jQuery._data( elem, type, jQuery.makeArray(data) );
+				} else {
+					queue.push( data );
+				}
+			}
+			return queue || [];
+		}
+	},
+
+	dequeue: function( elem, type ) {
+		type = type || "fx";
+
+		var queue = jQuery.queue( elem, type ),
+			startLength = queue.length,
+			fn = queue.shift(),
+			hooks = jQuery._queueHooks( elem, type ),
+			next = function() {
+				jQuery.dequeue( elem, type );
+			};
+
+		// If the fx queue is dequeued, always remove the progress sentinel
+		if ( fn === "inprogress" ) {
+			fn = queue.shift();
+			startLength--;
+		}
+
+		if ( fn ) {
+
+			// Add a progress sentinel to prevent the fx queue from being
+			// automatically dequeued
+			if ( type === "fx" ) {
+				queue.unshift( "inprogress" );
+			}
+
+			// clear up the last queue stop function
+			delete hooks.stop;
+			fn.call( elem, next, hooks );
+		}
+
+		if ( !startLength && hooks ) {
+			hooks.empty.fire();
+		}
+	},
+
+	// not intended for public consumption - generates a queueHooks object, or returns the current one
+	_queueHooks: function( elem, type ) {
+		var key = type + "queueHooks";
+		return jQuery._data( elem, key ) || jQuery._data( elem, key, {
+			empty: jQuery.Callbacks("once memory").add(function() {
+				jQuery.removeData( elem, type + "queue", true );
+				jQuery.removeData( elem, key, true );
+			})
+		});
+	}
+});
+
+jQuery.fn.extend({
+	queue: function( type, data ) {
+		var setter = 2;
+
+		if ( typeof type !== "string" ) {
+			data = type;
+			type = "fx";
+			setter--;
+		}
+
+		if ( arguments.length < setter ) {
+			return jQuery.queue( this[0], type );
+		}
+
+		return data === undefined ?
+			this :
+			this.each(function() {
+				var queue = jQuery.queue( this, type, data );
+
+				// ensure a hooks for this queue
+				jQuery._queueHooks( this, type );
+
+				if ( type === "fx" && queue[0] !== "inprogress" ) {
+					jQuery.dequeue( this, type );
+				}
+			});
+	},
+	dequeue: function( type ) {
+		return this.each(function() {
+			jQuery.dequeue( this, type );
+		});
+	},
+	// Based off of the plugin by Clint Helfers, with permission.
+	// http://blindsignals.com/index.php/2009/07/jquery-delay/
+	delay: function( time, type ) {
+		time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
+		type = type || "fx";
+
+		return this.queue( type, function( next, hooks ) {
+			var timeout = setTimeout( next, time );
+			hooks.stop = function() {
+				clearTimeout( timeout );
+			};
+		});
+	},
+	clearQueue: function( type ) {
+		return this.queue( type || "fx", [] );
+	},
+	// Get a promise resolved when queues of a certain type
+	// are emptied (fx is the type by default)
+	promise: function( type, obj ) {
+		var tmp,
+			count = 1,
+			defer = jQuery.Deferred(),
+			elements = this,
+			i = this.length,
+			resolve = function() {
+				if ( !( --count ) ) {
+					defer.resolveWith( elements, [ elements ] );
+				}
+			};
+
+		if ( typeof type !== "string" ) {
+			obj = type;
+			type = undefined;
+		}
+		type = type || "fx";
+
+		while( i-- ) {
+			tmp = jQuery._data( elements[ i ], type + "queueHooks" );
+			if ( tmp && tmp.empty ) {
+				count++;
+				tmp.empty.add( resolve );
+			}
+		}
+		resolve();
+		return defer.promise( obj );
+	}
+});
+var nodeHook, boolHook, fixSpecified,
+	rclass = /[\t\r\n]/g,
+	rreturn = /\r/g,
+	rtype = /^(?:button|input)$/i,
+	rfocusable = /^(?:button|input|object|select|textarea)$/i,
+	rclickable = /^a(?:rea|)$/i,
+	rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
+	getSetAttribute = jQuery.support.getSetAttribute;
+
+jQuery.fn.extend({
+	attr: function( name, value ) {
+		return jQuery.access( this, jQuery.attr, name, value, arguments.length > 1 );
+	},
+
+	removeAttr: function( name ) {
+		return this.each(function() {
+			jQuery.removeAttr( this, name );
+		});
+	},
+
+	prop: function( name, value ) {
+		return jQuery.access( this, jQuery.prop, name, value, arguments.length > 1 );
+	},
+
+	removeProp: function( name ) {
+		name = jQuery.propFix[ name ] || name;
+		return this.each(function() {
+			// try/catch handles cases where IE balks (such as removing a property on window)
+			try {
+				this[ name ] = undefined;
+				delete this[ name ];
+			} catch( e ) {}
+		});
+	},
+
+	addClass: function( value ) {
+		var classNames, i, l, elem,
+			setClass, c, cl;
+
+		if ( jQuery.isFunction( value ) ) {
+			return this.each(function( j ) {
+				jQuery( this ).addClass( value.call(this, j, this.className) );
+			});
+		}
+
+		if ( value && typeof value === "string" ) {
+			classNames = value.split( core_rspace );
+
+			for ( i = 0, l = this.length; i < l; i++ ) {
+				elem = this[ i ];
+
+				if ( elem.nodeType === 1 ) {
+					if ( !elem.className && classNames.length === 1 ) {
+						elem.className = value;
+
+					} else {
+						setClass = " " + elem.className + " ";
+
+						for ( c = 0, cl = classNames.length; c < cl; c++ ) {
+							if ( setClass.indexOf( " " + classNames[ c ] + " " ) < 0 ) {
+								setClass += classNames[ c ] + " ";
+							}
+						}
+						elem.className = jQuery.trim( setClass );
+					}
+				}
+			}
+		}
+
+		return this;
+	},
+
+	removeClass: function( value ) {
+		var removes, className, elem, c, cl, i, l;
+
+		if ( jQuery.isFunction( value ) ) {
+			return this.each(function( j ) {
+				jQuery( this ).removeClass( value.call(this, j, this.className) );
+			});
+		}
+		if ( (value && typeof value === "string") || value === undefined ) {
+			removes = ( value || "" ).split( core_rspace );
+
+			for ( i = 0, l = this.length; i < l; i++ ) {
+				elem = this[ i ];
+				if ( elem.nodeType === 1 && elem.className ) {
+
+					className = (" " + elem.className + " ").replace( rclass, " " );
+
+					// loop over each item in the removal list
+					for ( c = 0, cl = removes.length; c < cl; c++ ) {
+						// Remove until there is nothing to remove,
+						while ( className.indexOf(" " + removes[ c ] + " ") >= 0 ) {
+							className = className.replace( " " + removes[ c ] + " " , " " );
+						}
+					}
+					elem.className = value ? jQuery.trim( className ) : "";
+				}
+			}
+		}
+
+		return this;
+	},
+
+	toggleClass: function( value, stateVal ) {
+		var type = typeof value,
+			isBool = typeof stateVal === "boolean";
+
+		if ( jQuery.isFunction( value ) ) {
+			return this.each(function( i ) {
+				jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );
+			});
+		}
+
+		return this.each(function() {
+			if ( type === "string" ) {
+				// toggle individual class names
+				var className,
+					i = 0,
+					self = jQuery( this ),
+					state = stateVal,
+					classNames = value.split( core_rspace );
+
+				while ( (className = classNames[ i++ ]) ) {
+					// check each className given, space separated list
+					state = isBool ? state : !self.hasClass( className );
+					self[ state ? "addClass" : "removeClass" ]( className );
+				}
+
+			} else if ( type === "undefined" || type === "boolean" ) {
+				if ( this.className ) {
+					// store className if set
+					jQuery._data( this, "__className__", this.className );
+				}
+
+				// toggle whole className
+				this.className = this.className || value === false ? "" : jQuery._data( this, "__className__" ) || "";
+			}
+		});
+	},
+
+	hasClass: function( selector ) {
+		var className = " " + selector + " ",
+			i = 0,
+			l = this.length;
+		for ( ; i < l; i++ ) {
+			if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
+				return true;
+			}
+		}
+
+		return false;
+	},
+
+	val: function( value ) {
+		var hooks, ret, isFunction,
+			elem = this[0];
+
+		if ( !arguments.length ) {
+			if ( elem ) {
+				hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];
+
+				if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) {
+					return ret;
+				}
+
+				ret = elem.value;
+
+				return typeof ret === "string" ?
+					// handle most common string cases
+					ret.replace(rreturn, "") :
+					// handle cases where value is null/undef or number
+					ret == null ? "" : ret;
+			}
+
+			return;
+		}
+
+		isFunction = jQuery.isFunction( value );
+
+		return this.each(function( i ) {
+			var val,
+				self = jQuery(this);
+
+			if ( this.nodeType !== 1 ) {
+				return;
+			}
+
+			if ( isFunction ) {
+				val = value.call( this, i, self.val() );
+			} else {
+				val = value;
+			}
+
+			// Treat null/undefined as ""; convert numbers to string
+			if ( val == null ) {
+				val = "";
+			} else if ( typeof val === "number" ) {
+				val += "";
+			} else if ( jQuery.isArray( val ) ) {
+				val = jQuery.map(val, function ( value ) {
+					return value == null ? "" : value + "";
+				});
+			}
+
+			hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
+
+			// If set returns undefined, fall back to normal setting
+			if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) {
+				this.value = val;
+			}
+		});
+	}
+});
+
+jQuery.extend({
+	valHooks: {
+		option: {
+			get: function( elem ) {
+				// attributes.value is undefined in Blackberry 4.7 but
+				// uses .value. See #6932
+				var val = elem.attributes.value;
+				return !val || val.specified ? elem.value : elem.text;
+			}
+		},
+		select: {
+			get: function( elem ) {
+				var value, option,
+					options = elem.options,
+					index = elem.selectedIndex,
+					one = elem.type === "select-one" || index < 0,
+					values = one ? null : [],
+					max = one ? index + 1 : options.length,
+					i = index < 0 ?
+						max :
+						one ? index : 0;
+
+				// Loop through all the selected options
+				for ( ; i < max; i++ ) {
+					option = options[ i ];
+
+					// oldIE doesn't update selected after form reset (#2551)
+					if ( ( option.selected || i === index ) &&
+							// Don't return options that are disabled or in a disabled optgroup
+							( jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null ) &&
+							( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
+
+						// Get the specific value for the option
+						value = jQuery( option ).val();
+
+						// We don't need an array for one selects
+						if ( one ) {
+							return value;
+						}
+
+						// Multi-Selects return an array
+						values.push( value );
+					}
+				}
+
+				return values;
+			},
+
+			set: function( elem, value ) {
+				var values = jQuery.makeArray( value );
+
+				jQuery(elem).find("option").each(function() {
+					this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0;
+				});
+
+				if ( !values.length ) {
+					elem.selectedIndex = -1;
+				}
+				return values;
+			}
+		}
+	},
+
+	// Unused in 1.8, left in so attrFn-stabbers won't die; remove in 1.9
+	attrFn: {},
+
+	attr: function( elem, name, value, pass ) {
+		var ret, hooks, notxml,
+			nType = elem.nodeType;
+
+		// don't get/set attributes on text, comment and attribute nodes
+		if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
+			return;
+		}
+
+		if ( pass && jQuery.isFunction( jQuery.fn[ name ] ) ) {
+			return jQuery( elem )[ name ]( value );
+		}
+
+		// Fallback to prop when attributes are not supported
+		if ( typeof elem.getAttribute === "undefined" ) {
+			return jQuery.prop( elem, name, value );
+		}
+
+		notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
+
+		// All attributes are lowercase
+		// Grab necessary hook if one is defined
+		if ( notxml ) {
+			name = name.toLowerCase();
+			hooks = jQuery.attrHooks[ name ] || ( rboolean.test( name ) ? boolHook : nodeHook );
+		}
+
+		if ( value !== undefined ) {
+
+			if ( value === null ) {
+				jQuery.removeAttr( elem, name );
+				return;
+
+			} else if ( hooks && "set" in hooks && notxml && (ret = hooks.set( elem, value, name )) !== undefined ) {
+				return ret;
+
+			} else {
+				elem.setAttribute( name, value + "" );
+				return value;
+			}
+
+		} else if ( hooks && "get" in hooks && notxml && (ret = hooks.get( elem, name )) !== null ) {
+			return ret;
+
+		} else {
+
+			ret = elem.getAttribute( name );
+
+			// Non-existent attributes return null, we normalize to undefined
+			return ret === null ?
+				undefined :
+				ret;
+		}
+	},
+
+	removeAttr: function( elem, value ) {
+		var propName, attrNames, name, isBool,
+			i = 0;
+
+		if ( value && elem.nodeType === 1 ) {
+
+			attrNames = value.split( core_rspace );
+
+			for ( ; i < attrNames.length; i++ ) {
+				name = attrNames[ i ];
+
+				if ( name ) {
+					propName = jQuery.propFix[ name ] || name;
+					isBool = rboolean.test( name );
+
+					// See #9699 for explanation of this approach (setting first, then removal)
+					// Do not do this for boolean attributes (see #10870)
+					if ( !isBool ) {
+						jQuery.attr( elem, name, "" );
+					}
+					elem.removeAttribute( getSetAttribute ? name : propName );
+
+					// Set corresponding property to false for boolean attributes
+					if ( isBool && propName in elem ) {
+						elem[ propName ] = false;
+					}
+				}
+			}
+		}
+	},
+
+	attrHooks: {
+		type: {
+			set: function( elem, value ) {
+				// We can't allow the type property to be changed (since it causes problems in IE)
+				if ( rtype.test( elem.nodeName ) && elem.parentNode ) {
+					jQuery.error( "type property can't be changed" );
+				} else if ( !jQuery.support.radioValue && value === "radio" && jQuery.nodeName(elem, "input") ) {
+					// Setting the type on a radio button after the value resets the value in IE6-9
+					// Reset value to it's default in case type is set after value
+					// This is for element creation
+					var val = elem.value;
+					elem.setAttribute( "type", value );
+					if ( val ) {
+						elem.value = val;
+					}
+					return value;
+				}
+			}
+		},
+		// Use the value property for back compat
+		// Use the nodeHook for button elements in IE6/7 (#1954)
+		value: {
+			get: function( elem, name ) {
+				if ( nodeHook && jQuery.nodeName( elem, "button" ) ) {
+					return nodeHook.get( elem, name );
+				}
+				return name in elem ?
+					elem.value :
+					null;
+			},
+			set: function( elem, value, name ) {
+				if ( nodeHook && jQuery.nodeName( elem, "button" ) ) {
+					return nodeHook.set( elem, value, name );
+				}
+				// Does not return so that setAttribute is also used
+				elem.value = value;
+			}
+		}
+	},
+
+	propFix: {
+		tabindex: "tabIndex",
+		readonly: "readOnly",
+		"for": "htmlFor",
+		"class": "className",
+		maxlength: "maxLength",
+		cellspacing: "cellSpacing",
+		cellpadding: "cellPadding",
+		rowspan: "rowSpan",
+		colspan: "colSpan",
+		usemap: "useMap",
+		frameborder: "frameBorder",
+		contenteditable: "contentEditable"
+	},
+
+	prop: function( elem, name, value ) {
+		var ret, hooks, notxml,
+			nType = elem.nodeType;
+
+		// don't get/set properties on text, comment and attribute nodes
+		if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
+			return;
+		}
+
+		notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
+
+		if ( notxml ) {
+			// Fix name and attach hooks
+			name = jQuery.propFix[ name ] || name;
+			hooks = jQuery.propHooks[ name ];
+		}
+
+		if ( value !== undefined ) {
+			if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
+				return ret;
+
+			} else {
+				return ( elem[ name ] = value );
+			}
+
+		} else {
+			if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
+				return ret;
+
+			} else {
+				return elem[ name ];
+			}
+		}
+	},
+
+	propHooks: {
+		tabIndex: {
+			get: function( elem ) {
+				// elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
+				// http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
+				var attributeNode = elem.getAttributeNode("tabindex");
+
+				return attributeNode && attributeNode.specified ?
+					parseInt( attributeNode.value, 10 ) :
+					rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
+						0 :
+						undefined;
+			}
+		}
+	}
+});
+
+// Hook for boolean attributes
+boolHook = {
+	get: function( elem, name ) {
+		// Align boolean attributes with corresponding properties
+		// Fall back to attribute presence where some booleans are not supported
+		var attrNode,
+			property = jQuery.prop( elem, name );
+		return property === true || typeof property !== "boolean" && ( attrNode = elem.getAttributeNode(name) ) && attrNode.nodeValue !== false ?
+			name.toLowerCase() :
+			undefined;
+	},
+	set: function( elem, value, name ) {
+		var propName;
+		if ( value === false ) {
+			// Remove boolean attributes when set to false
+			jQuery.removeAttr( elem, name );
+		} else {
+			// value is true since we know at this point it's type boolean and not false
+			// Set boolean attributes to the same name and set the DOM property
+			propName = jQuery.propFix[ name ] || name;
+			if ( propName in elem ) {
+				// Only set the IDL specifically if it already exists on the element
+				elem[ propName ] = true;
+			}
+
+			elem.setAttribute( name, name.toLowerCase() );
+		}
+		return name;
+	}
+};
+
+// IE6/7 do not support getting/setting some attributes with get/setAttribute
+if ( !getSetAttribute ) {
+
+	fixSpecified = {
+		name: true,
+		id: true,
+		coords: true
+	};
+
+	// Use this for any attribute in IE6/7
+	// This fixes almost every IE6/7 issue
+	nodeHook = jQuery.valHooks.button = {
+		get: function( elem, name ) {
+			var ret;
+			ret = elem.getAttributeNode( name );
+			return ret && ( fixSpecified[ name ] ? ret.value !== "" : ret.specified ) ?
+				ret.value :
+				undefined;
+		},
+		set: function( elem, value, name ) {
+			// Set the existing or create a new attribute node
+			var ret = elem.getAttributeNode( name );
+			if ( !ret ) {
+				ret = document.createAttribute( name );
+				elem.setAttributeNode( ret );
+			}
+			return ( ret.value = value + "" );
+		}
+	};
+
+	// Set width and height to auto instead of 0 on empty string( Bug #8150 )
+	// This is for removals
+	jQuery.each([ "width", "height" ], function( i, name ) {
+		jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
+			set: function( elem, value ) {
+				if ( value === "" ) {
+					elem.setAttribute( name, "auto" );
+					return value;
+				}
+			}
+		});
+	});
+
+	// Set contenteditable to false on removals(#10429)
+	// Setting to empty string throws an error as an invalid value
+	jQuery.attrHooks.contenteditable = {
+		get: nodeHook.get,
+		set: function( elem, value, name ) {
+			if ( value === "" ) {
+				value = "false";
+			}
+			nodeHook.set( elem, value, name );
+		}
+	};
+}
+
+
+// Some attributes require a special call on IE
+if ( !jQuery.support.hrefNormalized ) {
+	jQuery.each([ "href", "src", "width", "height" ], function( i, name ) {
+		jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
+			get: function( elem ) {
+				var ret = elem.getAttribute( name, 2 );
+				return ret === null ? undefined : ret;
+			}
+		});
+	});
+}
+
+if ( !jQuery.support.style ) {
+	jQuery.attrHooks.style = {
+		get: function( elem ) {
+			// Return undefined in the case of empty string
+			// Normalize to lowercase since IE uppercases css property names
+			return elem.style.cssText.toLowerCase() || undefined;
+		},
+		set: function( elem, value ) {
+			return ( elem.style.cssText = value + "" );
+		}
+	};
+}
+
+// Safari mis-reports the default selected property of an option
+// Accessing the parent's selectedIndex property fixes it
+if ( !jQuery.support.optSelected ) {
+	jQuery.propHooks.selected = jQuery.extend( jQuery.propHooks.selected, {
+		get: function( elem ) {
+			var parent = elem.parentNode;
+
+			if ( parent ) {
+				parent.selectedIndex;
+
+				// Make sure that it also works with optgroups, see #5701
+				if ( parent.parentNode ) {
+					parent.parentNode.selectedIndex;
+				}
+			}
+			return null;
+		}
+	});
+}
+
+// IE6/7 call enctype encoding
+if ( !jQuery.support.enctype ) {
+	jQuery.propFix.enctype = "encoding";
+}
+
+// Radios and checkboxes getter/setter
+if ( !jQuery.support.checkOn ) {
+	jQuery.each([ "radio", "checkbox" ], function() {
+		jQuery.valHooks[ this ] = {
+			get: function( elem ) {
+				// Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified
+				return elem.getAttribute("value") === null ? "on" : elem.value;
+			}
+		};
+	});
+}
+jQuery.each([ "radio", "checkbox" ], function() {
+	jQuery.valHooks[ this ] = jQuery.extend( jQuery.valHooks[ this ], {
+		set: function( elem, value ) {
+			if ( jQuery.isArray( value ) ) {
+				return ( elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0 );
+			}
+		}
+	});
+});
+var rformElems = /^(?:textarea|input|select)$/i,
+	rtypenamespace = /^([^\.]*|)(?:\.(.+)|)$/,
+	rhoverHack = /(?:^|\s)hover(\.\S+|)\b/,
+	rkeyEvent = /^key/,
+	rmouseEvent = /^(?:mouse|contextmenu)|click/,
+	rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
+	hoverHack = function( events ) {
+		return jQuery.event.special.hover ? events : events.replace( rhoverHack, "mouseenter$1 mouseleave$1" );
+	};
+
+/*
+ * Helper functions for managing events -- not part of the public interface.
+ * Props to Dean Edwards' addEvent library for many of the ideas.
+ */
+jQuery.event = {
+
+	add: function( elem, types, handler, data, selector ) {
+
+		var elemData, eventHandle, events,
+			t, tns, type, namespaces, handleObj,
+			handleObjIn, handlers, special;
+
+		// Don't attach events to noData or text/comment nodes (allow plain objects tho)
+		if ( elem.nodeType === 3 || elem.nodeType === 8 || !types || !handler || !(elemData = jQuery._data( elem )) ) {
+			return;
+		}
+
+		// Caller can pass in an object of custom data in lieu of the handler
+		if ( handler.handler ) {
+			handleObjIn = handler;
+			handler = handleObjIn.handler;
+			selector = handleObjIn.selector;
+		}
+
+		// Make sure that the handler has a unique ID, used to find/remove it later
+		if ( !handler.guid ) {
+			handler.guid = jQuery.guid++;
+		}
+
+		// Init the element's event structure and main handler, if this is the first
+		events = elemData.events;
+		if ( !events ) {
+			elemData.events = events = {};
+		}
+		eventHandle = elemData.handle;
+		if ( !eventHandle ) {
+			elemData.handle = eventHandle = function( e ) {
+				// Discard the second event of a jQuery.event.trigger() and
+				// when an event is called after a page has unloaded
+				return typeof jQuery !== "undefined" && (!e || jQuery.event.triggered !== e.type) ?
+					jQuery.event.dispatch.apply( eventHandle.elem, arguments ) :
+					undefined;
+			};
+			// Add elem as a property of the handle fn to prevent a memory leak with IE non-native events
+			eventHandle.elem = elem;
+		}
+
+		// Handle multiple events separated by a space
+		// jQuery(...).bind("mouseover mouseout", fn);
+		types = jQuery.trim( hoverHack(types) ).split( " " );
+		for ( t = 0; t < types.length; t++ ) {
+
+			tns = rtypenamespace.exec( types[t] ) || [];
+			type = tns[1];
+			namespaces = ( tns[2] || "" ).split( "." ).sort();
+
+			// If event changes its type, use the special event handlers for the changed type
+			special = jQuery.event.special[ type ] || {};
+
+			// If selector defined, determine special event api type, otherwise given type
+			type = ( selector ? special.delegateType : special.bindType ) || type;
+
+			// Update special based on newly reset type
+			special = jQuery.event.special[ type ] || {};
+
+			// handleObj is passed to all event handlers
+			handleObj = jQuery.extend({
+				type: type,
+				origType: tns[1],
+				data: data,
+				handler: handler,
+				guid: handler.guid,
+				selector: selector,
+				needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
+				namespace: namespaces.join(".")
+			}, handleObjIn );
+
+			// Init the event handler queue if we're the first
+			handlers = events[ type ];
+			if ( !handlers ) {
+				handlers = events[ type ] = [];
+				handlers.delegateCount = 0;
+
+				// Only use addEventListener/attachEvent if the special events handler returns false
+				if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
+					// Bind the global event handler to the element
+					if ( elem.addEventListener ) {
+						elem.addEventListener( type, eventHandle, false );
+
+					} else if ( elem.attachEvent ) {
+						elem.attachEvent( "on" + type, eventHandle );
+					}
+				}
+			}
+
+			if ( special.add ) {
+				special.add.call( elem, handleObj );
+
+				if ( !handleObj.handler.guid ) {
+					handleObj.handler.guid = handler.guid;
+				}
+			}
+
+			// Add to the element's handler list, delegates in front
+			if ( selector ) {
+				handlers.splice( handlers.delegateCount++, 0, handleObj );
+			} else {
+				handlers.push( handleObj );
+			}
+
+			// Keep track of which events have ever been used, for event optimization
+			jQuery.event.global[ type ] = true;
+		}
+
+		// Nullify elem to prevent memory leaks in IE
+		elem = null;
+	},
+
+	global: {},
+
+	// Detach an event or set of events from an element
+	remove: function( elem, types, handler, selector, mappedTypes ) {
+
+		var t, tns, type, origType, namespaces, origCount,
+			j, events, special, eventType, handleObj,
+			elemData = jQuery.hasData( elem ) && jQuery._data( elem );
+
+		if ( !elemData || !(events = elemData.events) ) {
+			return;
+		}
+
+		// Once for each type.namespace in types; type may be omitted
+		types = jQuery.trim( hoverHack( types || "" ) ).split(" ");
+		for ( t = 0; t < types.length; t++ ) {
+			tns = rtypenamespace.exec( types[t] ) || [];
+			type = origType = tns[1];
+			namespaces = tns[2];
+
+			// Unbind all events (on this namespace, if provided) for the element
+			if ( !type ) {
+				for ( type in events ) {
+					jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
+				}
+				continue;
+			}
+
+			special = jQuery.event.special[ type ] || {};
+			type = ( selector? special.delegateType : special.bindType ) || type;
+			eventType = events[ type ] || [];
+			origCount = eventType.length;
+			namespaces = namespaces ? new RegExp("(^|\\.)" + namespaces.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
+
+			// Remove matching events
+			for ( j = 0; j < eventType.length; j++ ) {
+				handleObj = eventType[ j ];
+
+				if ( ( mappedTypes || origType === handleObj.origType ) &&
+					 ( !handler || handler.guid === handleObj.guid ) &&
+					 ( !namespaces || namespaces.test( handleObj.namespace ) ) &&
+					 ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) {
+					eventType.splice( j--, 1 );
+
+					if ( handleObj.selector ) {
+						eventType.delegateCount--;
+					}
+					if ( special.remove ) {
+						special.remove.call( elem, handleObj );
+					}
+				}
+			}
+
+			// Remove generic event handler if we removed something and no more handlers exist
+			// (avoids potential for endless recursion during removal of special event handlers)
+			if ( eventType.length === 0 && origCount !== eventType.length ) {
+				if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
+					jQuery.removeEvent( elem, type, elemData.handle );
+				}
+
+				delete events[ type ];
+			}
+		}
+
+		// Remove the expando if it's no longer used
+		if ( jQuery.isEmptyObject( events ) ) {
+			delete elemData.handle;
+
+			// removeData also checks for emptiness and clears the expando if empty
+			// so use it instead of delete
+			jQuery.removeData( elem, "events", true );
+		}
+	},
+
+	// Events that are safe to short-circuit if no handlers are attached.
+	// Native DOM events should not be added, they may have inline handlers.
+	customEvent: {
+		"getData": true,
+		"setData": true,
+		"changeData": true
+	},
+
+	trigger: function( event, data, elem, onlyHandlers ) {
+		// Don't do events on text and comment nodes
+		if ( elem && (elem.nodeType === 3 || elem.nodeType === 8) ) {
+			return;
+		}
+
+		// Event object or event type
+		var cache, exclusive, i, cur, old, ontype, special, handle, eventPath, bubbleType,
+			type = event.type || event,
+			namespaces = [];
+
+		// focus/blur morphs to focusin/out; ensure we're not firing them right now
+		if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
+			return;
+		}
+
+		if ( type.indexOf( "!" ) >= 0 ) {
+			// Exclusive events trigger only for the exact event (no namespaces)
+			type = type.slice(0, -1);
+			exclusive = true;
+		}
+
+		if ( type.indexOf( "." ) >= 0 ) {
+			// Namespaced trigger; create a regexp to match event type in handle()
+			namespaces = type.split(".");
+			type = namespaces.shift();
+			namespaces.sort();
+		}
+
+		if ( (!elem || jQuery.event.customEvent[ type ]) && !jQuery.event.global[ type ] ) {
+			// No jQuery handlers for this event type, and it can't have inline handlers
+			return;
+		}
+
+		// Caller can pass in an Event, Object, or just an event type string
+		event = typeof event === "object" ?
+			// jQuery.Event object
+			event[ jQuery.expando ] ? event :
+			// Object literal
+			new jQuery.Event( type, event ) :
+			// Just the event type (string)
+			new jQuery.Event( type );
+
+		event.type = type;
+		event.isTrigger = true;
+		event.exclusive = exclusive;
+		event.namespace = namespaces.join( "." );
+		event.namespace_re = event.namespace? new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
+		ontype = type.indexOf( ":" ) < 0 ? "on" + type : "";
+
+		// Handle a global trigger
+		if ( !elem ) {
+
+			// TODO: Stop taunting the data cache; remove global events and always attach to document
+			cache = jQuery.cache;
+			for ( i in cache ) {
+				if ( cache[ i ].events && cache[ i ].events[ type ] ) {
+					jQuery.event.trigger( event, data, cache[ i ].handle.elem, true );
+				}
+			}
+			return;
+		}
+
+		// Clean up the event in case it is being reused
+		event.result = undefined;
+		if ( !event.target ) {
+			event.target = elem;
+		}
+
+		// Clone any incoming data and prepend the event, creating the handler arg list
+		data = data != null ? jQuery.makeArray( data ) : [];
+		data.unshift( event );
+
+		// Allow special events to draw outside the lines
+		special = jQuery.event.special[ type ] || {};
+		if ( special.trigger && special.trigger.apply( elem, data ) === false ) {
+			return;
+		}
+
+		// Determine event propagation path in advance, per W3C events spec (#9951)
+		// Bubble up to document, then to window; watch for a global ownerDocument var (#9724)
+		eventPath = [[ elem, special.bindType || type ]];
+		if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {
+
+			bubbleType = special.delegateType || type;
+			cur = rfocusMorph.test( bubbleType + type ) ? elem : elem.parentNode;
+			for ( old = elem; cur; cur = cur.parentNode ) {
+				eventPath.push([ cur, bubbleType ]);
+				old = cur;
+			}
+
+			// Only add window if we got to document (e.g., not plain obj or detached DOM)
+			if ( old === (elem.ownerDocument || document) ) {
+				eventPath.push([ old.defaultView || old.parentWindow || window, bubbleType ]);
+			}
+		}
+
+		// Fire handlers on the event path
+		for ( i = 0; i < eventPath.length && !event.isPropagationStopped(); i++ ) {
+
+			cur = eventPath[i][0];
+			event.type = eventPath[i][1];
+
+			handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && jQuery._data( cur, "handle" );
+			if ( handle ) {
+				handle.apply( cur, data );
+			}
+			// Note that this is a bare JS function and not a jQuery handler
+			handle = ontype && cur[ ontype ];
+			if ( handle && jQuery.acceptData( cur ) && handle.apply && handle.apply( cur, data ) === false ) {
+				event.preventDefault();
+			}
+		}
+		event.type = type;
+
+		// If nobody prevented the default action, do it now
+		if ( !onlyHandlers && !event.isDefaultPrevented() ) {
+
+			if ( (!special._default || special._default.apply( elem.ownerDocument, data ) === false) &&
+				!(type === "click" && jQuery.nodeName( elem, "a" )) && jQuery.acceptData( elem ) ) {
+
+				// Call a native DOM method on the target with the same name name as the event.
+				// Can't use an .isFunction() check here because IE6/7 fails that test.
+				// Don't do default actions on window, that's where global variables be (#6170)
+				// IE<9 dies on focus/blur to hidden element (#1486)
+				if ( ontype && elem[ type ] && ((type !== "focus" && type !== "blur") || event.target.offsetWidth !== 0) && !jQuery.isWindow( elem ) ) {
+
+					// Don't re-trigger an onFOO event when we call its FOO() method
+					old = elem[ ontype ];
+
+					if ( old ) {
+						elem[ ontype ] = null;
+					}
+
+					// Prevent re-triggering of the same event, since we already bubbled it above
+					jQuery.event.triggered = type;
+					elem[ type ]();
+					jQuery.event.triggered = undefined;
+
+					if ( old ) {
+						elem[ ontype ] = old;
+					}
+				}
+			}
+		}
+
+		return event.result;
+	},
+
+	dispatch: function( event ) {
+
+		// Make a writable jQuery.Event from the native event object
+		event = jQuery.event.fix( event || window.event );
+
+		var i, j, cur, ret, selMatch, matched, matches, handleObj, sel, related,
+			handlers = ( (jQuery._data( this, "events" ) || {} )[ event.type ] || []),
+			delegateCount = handlers.delegateCount,
+			args = core_slice.call( arguments ),
+			run_all = !event.exclusive && !event.namespace,
+			special = jQuery.event.special[ event.type ] || {},
+			handlerQueue = [];
+
+		// Use the fix-ed jQuery.Event rather than the (read-only) native event
+		args[0] = event;
+		event.delegateTarget = this;
+
+		// Call the preDispatch hook for the mapped type, and let it bail if desired
+		if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
+			return;
+		}
+
+		// Determine handlers that should run if there are delegated events
+		// Avoid non-left-click bubbling in Firefox (#3861)
+		if ( delegateCount && !(event.button && event.type === "click") ) {
+
+			for ( cur = event.target; cur != this; cur = cur.parentNode || this ) {
+
+				// Don't process clicks (ONLY) on disabled elements (#6911, #8165, #11382, #11764)
+				if ( cur.disabled !== true || event.type !== "click" ) {
+					selMatch = {};
+					matches = [];
+					for ( i = 0; i < delegateCount; i++ ) {
+						handleObj = handlers[ i ];
+						sel = handleObj.selector;
+
+						if ( selMatch[ sel ] === undefined ) {
+							selMatch[ sel ] = handleObj.needsContext ?
+								jQuery( sel, this ).index( cur ) >= 0 :
+								jQuery.find( sel, this, null, [ cur ] ).length;
+						}
+						if ( selMatch[ sel ] ) {
+							matches.push( handleObj );
+						}
+					}
+					if ( matches.length ) {
+						handlerQueue.push({ elem: cur, matches: matches });
+					}
+				}
+			}
+		}
+
+		// Add the remaining (directly-bound) handlers
+		if ( handlers.length > delegateCount ) {
+			handlerQueue.push({ elem: this, matches: handlers.slice( delegateCount ) });
+		}
+
+		// Run delegates first; they may want to stop propagation beneath us
+		for ( i = 0; i < handlerQueue.length && !event.isPropagationStopped(); i++ ) {
+			matched = handlerQueue[ i ];
+			event.currentTarget = matched.elem;
+
+			for ( j = 0; j < matched.matches.length && !event.isImmediatePropagationStopped(); j++ ) {
+				handleObj = matched.matches[ j ];
+
+				// Triggered event must either 1) be non-exclusive and have no namespace, or
+				// 2) have namespace(s) a subset or equal to those in the bound event (both can have no namespace).
+				if ( run_all || (!event.namespace && !handleObj.namespace) || event.namespace_re && event.namespace_re.test( handleObj.namespace ) ) {
+
+					event.data = handleObj.data;
+					event.handleObj = handleObj;
+
+					ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler )
+							.apply( matched.elem, args );
+
+					if ( ret !== undefined ) {
+						event.result = ret;
+						if ( ret === false ) {
+							event.preventDefault();
+							event.stopPropagation();
+						}
+					}
+				}
+			}
+		}
+
+		// Call the postDispatch hook for the mapped type
+		if ( special.postDispatch ) {
+			special.postDispatch.call( this, event );
+		}
+
+		return event.result;
+	},
+
+	// Includes some event props shared by KeyEvent and MouseEvent
+	// *** attrChange attrName relatedNode srcElement  are not normalized, non-W3C, deprecated, will be removed in 1.8 ***
+	props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
+
+	fixHooks: {},
+
+	keyHooks: {
+		props: "char charCode key keyCode".split(" "),
+		filter: function( event, original ) {
+
+			// Add which for key events
+			if ( event.which == null ) {
+				event.which = original.charCode != null ? original.charCode : original.keyCode;
+			}
+
+			return event;
+		}
+	},
+
+	mouseHooks: {
+		props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
+		filter: function( event, original ) {
+			var eventDoc, doc, body,
+				button = original.button,
+				fromElement = original.fromElement;
+
+			// Calculate pageX/Y if missing and clientX/Y available
+			if ( event.pageX == null && original.clientX != null ) {
+				eventDoc = event.target.ownerDocument || document;
+				doc = eventDoc.documentElement;
+				body = eventDoc.body;
+
+				event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 );
+				event.pageY = original.clientY + ( doc && doc.scrollTop  || body && body.scrollTop  || 0 ) - ( doc && doc.clientTop  || body && body.clientTop  || 0 );
+			}
+
+			// Add relatedTarget, if necessary
+			if ( !event.relatedTarget && fromElement ) {
+				event.relatedTarget = fromElement === event.target ? original.toElement : fromElement;
+			}
+
+			// Add which for click: 1 === left; 2 === middle; 3 === right
+			// Note: button is not normalized, so don't use it
+			if ( !event.which && button !== undefined ) {
+				event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );
+			}
+
+			return event;
+		}
+	},
+
+	fix: function( event ) {
+		if ( event[ jQuery.expando ] ) {
+			return event;
+		}
+
+		// Create a writable copy of the event object and normalize some properties
+		var i, prop,
+			originalEvent = event,
+			fixHook = jQuery.event.fixHooks[ event.type ] || {},
+			copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;
+
+		event = jQuery.Event( originalEvent );
+
+		for ( i = copy.length; i; ) {
+			prop = copy[ --i ];
+			event[ prop ] = originalEvent[ prop ];
+		}
+
+		// Fix target property, if necessary (#1925, IE 6/7/8 & Safari2)
+		if ( !event.target ) {
+			event.target = originalEvent.srcElement || document;
+		}
+
+		// Target should not be a text node (#504, Safari)
+		if ( event.target.nodeType === 3 ) {
+			event.target = event.target.parentNode;
+		}
+
+		// For mouse/key events, metaKey==false if it's undefined (#3368, #11328; IE6/7/8)
+		event.metaKey = !!event.metaKey;
+
+		return fixHook.filter? fixHook.filter( event, originalEvent ) : event;
+	},
+
+	special: {
+		load: {
+			// Prevent triggered image.load events from bubbling to window.load
+			noBubble: true
+		},
+
+		focus: {
+			delegateType: "focusin"
+		},
+		blur: {
+			delegateType: "focusout"
+		},
+
+		beforeunload: {
+			setup: function( data, namespaces, eventHandle ) {
+				// We only want to do this special case on windows
+				if ( jQuery.isWindow( this ) ) {
+					this.onbeforeunload = eventHandle;
+				}
+			},
+
+			teardown: function( namespaces, eventHandle ) {
+				if ( this.onbeforeunload === eventHandle ) {
+					this.onbeforeunload = null;
+				}
+			}
+		}
+	},
+
+	simulate: function( type, elem, event, bubble ) {
+		// Piggyback on a donor event to simulate a different one.
+		// Fake originalEvent to avoid donor's stopPropagation, but if the
+		// simulated event prevents default then we do the same on the donor.
+		var e = jQuery.extend(
+			new jQuery.Event(),
+			event,
+			{ type: type,
+				isSimulated: true,
+				originalEvent: {}
+			}
+		);
+		if ( bubble ) {
+			jQuery.event.trigger( e, null, elem );
+		} else {
+			jQuery.event.dispatch.call( elem, e );
+		}
+		if ( e.isDefaultPrevented() ) {
+			event.preventDefault();
+		}
+	}
+};
+
+// Some plugins are using, but it's undocumented/deprecated and will be removed.
+// The 1.7 special event interface should provide all the hooks needed now.
+jQuery.event.handle = jQuery.event.dispatch;
+
+jQuery.removeEvent = document.removeEventListener ?
+	function( elem, type, handle ) {
+		if ( elem.removeEventListener ) {
+			elem.removeEventListener( type, handle, false );
+		}
+	} :
+	function( elem, type, handle ) {
+		var name = "on" + type;
+
+		if ( elem.detachEvent ) {
+
+			// #8545, #7054, preventing memory leaks for custom events in IE6-8
+			// detachEvent needed property on element, by name of that event, to properly expose it to GC
+			if ( typeof elem[ name ] === "undefined" ) {
+				elem[ name ] = null;
+			}
+
+			elem.detachEvent( name, handle );
+		}
+	};
+
+jQuery.Event = function( src, props ) {
+	// Allow instantiation without the 'new' keyword
+	if ( !(this instanceof jQuery.Event) ) {
+		return new jQuery.Event( src, props );
+	}
+
+	// Event object
+	if ( src && src.type ) {
+		this.originalEvent = src;
+		this.type = src.type;
+
+		// Events bubbling up the document may have been marked as prevented
+		// by a handler lower down the tree; reflect the correct value.
+		this.isDefaultPrevented = ( src.defaultPrevented || src.returnValue === false ||
+			src.getPreventDefault && src.getPreventDefault() ) ? returnTrue : returnFalse;
+
+	// Event type
+	} else {
+		this.type = src;
+	}
+
+	// Put explicitly provided properties onto the event object
+	if ( props ) {
+		jQuery.extend( this, props );
+	}
+
+	// Create a timestamp if incoming event doesn't have one
+	this.timeStamp = src && src.timeStamp || jQuery.now();
+
+	// Mark it as fixed
+	this[ jQuery.expando ] = true;
+};
+
+function returnFalse() {
+	return false;
+}
+function returnTrue() {
+	return true;
+}
+
+// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
+// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
+jQuery.Event.prototype = {
+	preventDefault: function() {
+		this.isDefaultPrevented = returnTrue;
+
+		var e = this.originalEvent;
+		if ( !e ) {
+			return;
+		}
+
+		// if preventDefault exists run it on the original event
+		if ( e.preventDefault ) {
+			e.preventDefault();
+
+		// otherwise set the returnValue property of the original event to false (IE)
+		} else {
+			e.returnValue = false;
+		}
+	},
+	stopPropagation: function() {
+		this.isPropagationStopped = returnTrue;
+
+		var e = this.originalEvent;
+		if ( !e ) {
+			return;
+		}
+		// if stopPropagation exists run it on the original event
+		if ( e.stopPropagation ) {
+			e.stopPropagation();
+		}
+		// otherwise set the cancelBubble property of the original event to true (IE)
+		e.cancelBubble = true;
+	},
+	stopImmediatePropagation: function() {
+		this.isImmediatePropagationStopped = returnTrue;
+		this.stopPropagation();
+	},
+	isDefaultPrevented: returnFalse,
+	isPropagationStopped: returnFalse,
+	isImmediatePropagationStopped: returnFalse
+};
+
+// Create mouseenter/leave events using mouseover/out and event-time checks
+jQuery.each({
+	mouseenter: "mouseover",
+	mouseleave: "mouseout"
+}, function( orig, fix ) {
+	jQuery.event.special[ orig ] = {
+		delegateType: fix,
+		bindType: fix,
+
+		handle: function( event ) {
+			var ret,
+				target = this,
+				related = event.relatedTarget,
+				handleObj = event.handleObj,
+				selector = handleObj.selector;
+
+			// For mousenter/leave call the handler if related is outside the target.
+			// NB: No relatedTarget if the mouse left/entered the browser window
+			if ( !related || (related !== target && !jQuery.contains( target, related )) ) {
+				event.type = handleObj.origType;
+				ret = handleObj.handler.apply( this, arguments );
+				event.type = fix;
+			}
+			return ret;
+		}
+	};
+});
+
+// IE submit delegation
+if ( !jQuery.support.submitBubbles ) {
+
+	jQuery.event.special.submit = {
+		setup: function() {
+			// Only need this for delegated form submit events
+			if ( jQuery.nodeName( this, "form" ) ) {
+				return false;
+			}
+
+			// Lazy-add a submit handler when a descendant form may potentially be submitted
+			jQuery.event.add( this, "click._submit keypress._submit", function( e ) {
+				// Node name check avoids a VML-related crash in IE (#9807)
+				var elem = e.target,
+					form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.form : undefined;
+				if ( form && !jQuery._data( form, "_submit_attached" ) ) {
+					jQuery.event.add( form, "submit._submit", function( event ) {
+						event._submit_bubble = true;
+					});
+					jQuery._data( form, "_submit_attached", true );
+				}
+			});
+			// return undefined since we don't need an event listener
+		},
+
+		postDispatch: function( event ) {
+			// If form was submitted by the user, bubble the event up the tree
+			if ( event._submit_bubble ) {
+				delete event._submit_bubble;
+				if ( this.parentNode && !event.isTrigger ) {
+					jQuery.event.simulate( "submit", this.parentNode, event, true );
+				}
+			}
+		},
+
+		teardown: function() {
+			// Only need this for delegated form submit events
+			if ( jQuery.nodeName( this, "form" ) ) {
+				return false;
+			}
+
+			// Remove delegated handlers; cleanData eventually reaps submit handlers attached above
+			jQuery.event.remove( this, "._submit" );
+		}
+	};
+}
+
+// IE change delegation and checkbox/radio fix
+if ( !jQuery.support.changeBubbles ) {
+
+	jQuery.event.special.change = {
+
+		setup: function() {
+
+			if ( rformElems.test( this.nodeName ) ) {
+				// IE doesn't fire change on a check/radio until blur; trigger it on click
+				// after a propertychange. Eat the blur-change in special.change.handle.
+				// This still fires onchange a second time for check/radio after blur.
+				if ( this.type === "checkbox" || this.type === "radio" ) {
+					jQuery.event.add( this, "propertychange._change", function( event ) {
+						if ( event.originalEvent.propertyName === "checked" ) {
+							this._just_changed = true;
+						}
+					});
+					jQuery.event.add( this, "click._change", function( event ) {
+						if ( this._just_changed && !event.isTrigger ) {
+							this._just_changed = false;
+						}
+						// Allow triggered, simulated change events (#11500)
+						jQuery.event.simulate( "change", this, event, true );
+					});
+				}
+				return false;
+			}
+			// Delegated event; lazy-add a change handler on descendant inputs
+			jQuery.event.add( this, "beforeactivate._change", function( e ) {
+				var elem = e.target;
+
+				if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "_change_attached" ) ) {
+					jQuery.event.add( elem, "change._change", function( event ) {
+						if ( this.parentNode && !event.isSimulated && !event.isTrigger ) {
+							jQuery.event.simulate( "change", this.parentNode, event, true );
+						}
+					});
+					jQuery._data( elem, "_change_attached", true );
+				}
+			});
+		},
+
+		handle: function( event ) {
+			var elem = event.target;
+
+			// Swallow native change events from checkbox/radio, we already triggered them above
+			if ( this !== elem || event.isSimulated || event.isTrigger || (elem.type !== "radio" && elem.type !== "checkbox") ) {
+				return event.handleObj.handler.apply( this, arguments );
+			}
+		},
+
+		teardown: function() {
+			jQuery.event.remove( this, "._change" );
+
+			return !rformElems.test( this.nodeName );
+		}
+	};
+}
+
+// Create "bubbling" focus and blur events
+if ( !jQuery.support.focusinBubbles ) {
+	jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
+
+		// Attach a single capturing handler while someone wants focusin/focusout
+		var attaches = 0,
+			handler = function( event ) {
+				jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true );
+			};
+
+		jQuery.event.special[ fix ] = {
+			setup: function() {
+				if ( attaches++ === 0 ) {
+					document.addEventListener( orig, handler, true );
+				}
+			},
+			teardown: function() {
+				if ( --attaches === 0 ) {
+					document.removeEventListener( orig, handler, true );
+				}
+			}
+		};
+	});
+}
+
+jQuery.fn.extend({
+
+	on: function( types, selector, data, fn, /*INTERNAL*/ one ) {
+		var origFn, type;
+
+		// Types can be a map of types/handlers
+		if ( typeof types === "object" ) {
+			// ( types-Object, selector, data )
+			if ( typeof selector !== "string" ) { // && selector != null
+				// ( types-Object, data )
+				data = data || selector;
+				selector = undefined;
+			}
+			for ( type in types ) {
+				this.on( type, selector, data, types[ type ], one );
+			}
+			return this;
+		}
+
+		if ( data == null && fn == null ) {
+			// ( types, fn )
+			fn = selector;
+			data = selector = undefined;
+		} else if ( fn == null ) {
+			if ( typeof selector === "string" ) {
+				// ( types, selector, fn )
+				fn = data;
+				data = undefined;
+			} else {
+				// ( types, data, fn )
+				fn = data;
+				data = selector;
+				selector = undefined;
+			}
+		}
+		if ( fn === false ) {
+			fn = returnFalse;
+		} else if ( !fn ) {
+			return this;
+		}
+
+		if ( one === 1 ) {
+			origFn = fn;
+			fn = function( event ) {
+				// Can use an empty set, since event contains the info
+				jQuery().off( event );
+				return origFn.apply( this, arguments );
+			};
+			// Use same guid so caller can remove using origFn
+			fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
+		}
+		return this.each( function() {
+			jQuery.event.add( this, types, fn, data, selector );
+		});
+	},
+	one: function( types, selector, data, fn ) {
+		return this.on( types, selector, data, fn, 1 );
+	},
+	off: function( types, selector, fn ) {
+		var handleObj, type;
+		if ( types && types.preventDefault && types.handleObj ) {
+			// ( event )  dispatched jQuery.Event
+			handleObj = types.handleObj;
+			jQuery( types.delegateTarget ).off(
+				handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType,
+				handleObj.selector,
+				handleObj.handler
+			);
+			return this;
+		}
+		if ( typeof types === "object" ) {
+			// ( types-object [, selector] )
+			for ( type in types ) {
+				this.off( type, selector, types[ type ] );
+			}
+			return this;
+		}
+		if ( selector === false || typeof selector === "function" ) {
+			// ( types [, fn] )
+			fn = selector;
+			selector = undefined;
+		}
+		if ( fn === false ) {
+			fn = returnFalse;
+		}
+		return this.each(function() {
+			jQuery.event.remove( this, types, fn, selector );
+		});
+	},
+
+	bind: function( types, data, fn ) {
+		return this.on( types, null, data, fn );
+	},
+	unbind: function( types, fn ) {
+		return this.off( types, null, fn );
+	},
+
+	live: function( types, data, fn ) {
+		jQuery( this.context ).on( types, this.selector, data, fn );
+		return this;
+	},
+	die: function( types, fn ) {
+		jQuery( this.context ).off( types, this.selector || "**", fn );
+		return this;
+	},
+
+	delegate: function( selector, types, data, fn ) {
+		return this.on( types, selector, data, fn );
+	},
+	undelegate: function( selector, types, fn ) {
+		// ( namespace ) or ( selector, types [, fn] )
+		return arguments.length === 1 ? this.off( selector, "**" ) : this.off( types, selector || "**", fn );
+	},
+
+	trigger: function( type, data ) {
+		return this.each(function() {
+			jQuery.event.trigger( type, data, this );
+		});
+	},
+	triggerHandler: function( type, data ) {
+		if ( this[0] ) {
+			return jQuery.event.trigger( type, data, this[0], true );
+		}
+	},
+
+	toggle: function( fn ) {
+		// Save reference to arguments for access in closure
+		var args = arguments,
+			guid = fn.guid || jQuery.guid++,
+			i = 0,
+			toggler = function( event ) {
+				// Figure out which function to execute
+				var lastToggle = ( jQuery._data( this, "lastToggle" + fn.guid ) || 0 ) % i;
+				jQuery._data( this, "lastToggle" + fn.guid, lastToggle + 1 );
+
+				// Make sure that clicks stop
+				event.preventDefault();
+
+				// and execute the function
+				return args[ lastToggle ].apply( this, arguments ) || false;
+			};
+
+		// link all the functions, so any of them can unbind this click handler
+		toggler.guid = guid;
+		while ( i < args.length ) {
+			args[ i++ ].guid = guid;
+		}
+
+		return this.click( toggler );
+	},
+
+	hover: function( fnOver, fnOut ) {
+		return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
+	}
+});
+
+jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
+	"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
+	"change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) {
+
+	// Handle event binding
+	jQuery.fn[ name ] = function( data, fn ) {
+		if ( fn == null ) {
+			fn = data;
+			data = null;
+		}
+
+		return arguments.length > 0 ?
+			this.on( name, null, data, fn ) :
+			this.trigger( name );
+	};
+
+	if ( rkeyEvent.test( name ) ) {
+		jQuery.event.fixHooks[ name ] = jQuery.event.keyHooks;
+	}
+
+	if ( rmouseEvent.test( name ) ) {
+		jQuery.event.fixHooks[ name ] = jQuery.event.mouseHooks;
+	}
+});
+/*!
+ * Sizzle CSS Selector Engine
+ * Copyright 2012 jQuery Foundation and other contributors
+ * Released under the MIT license
+ * http://sizzlejs.com/
+ */
+(function( window, undefined ) {
+
+var cachedruns,
+	assertGetIdNotName,
+	Expr,
+	getText,
+	isXML,
+	contains,
+	compile,
+	sortOrder,
+	hasDuplicate,
+	outermostContext,
+
+	baseHasDuplicate = true,
+	strundefined = "undefined",
+
+	expando = ( "sizcache" + Math.random() ).replace( ".", "" ),
+
+	Token = String,
+	document = window.document,
+	docElem = document.documentElement,
+	dirruns = 0,
+	done = 0,
+	pop = [].pop,
+	push = [].push,
+	slice = [].slice,
+	// Use a stripped-down indexOf if a native one is unavailable
+	indexOf = [].indexOf || function( elem ) {
+		var i = 0,
+			len = this.length;
+		for ( ; i < len; i++ ) {
+			if ( this[i] === elem ) {
+				return i;
+			}
+		}
+		return -1;
+	},
+
+	// Augment a function for special use by Sizzle
+	markFunction = function( fn, value ) {
+		fn[ expando ] = value == null || value;
+		return fn;
+	},
+
+	createCache = function() {
+		var cache = {},
+			keys = [];
+
+		return markFunction(function( key, value ) {
+			// Only keep the most recent entries
+			if ( keys.push( key ) > Expr.cacheLength ) {
+				delete cache[ keys.shift() ];
+			}
+
+			// Retrieve with (key + " ") to avoid collision with native Object.prototype properties (see Issue #157)
+			return (cache[ key + " " ] = value);
+		}, cache );
+	},
+
+	classCache = createCache(),
+	tokenCache = createCache(),
+	compilerCache = createCache(),
+
+	// Regex
+
+	// Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace
+	whitespace = "[\\x20\\t\\r\\n\\f]",
+	// http://www.w3.org/TR/css3-syntax/#characters
+	characterEncoding = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",
+
+	// Loosely modeled on CSS identifier characters
+	// An unquoted value should be a CSS identifier (http://www.w3.org/TR/css3-selectors/#attribute-selectors)
+	// Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
+	identifier = characterEncoding.replace( "w", "w#" ),
+
+	// Acceptable operators http://www.w3.org/TR/selectors/#attribute-selectors
+	operators = "([*^$|!~]?=)",
+	attributes = "\\[" + whitespace + "*(" + characterEncoding + ")" + whitespace +
+		"*(?:" + operators + whitespace + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + identifier + ")|)|)" + whitespace + "*\\]",
+
+	// Prefer arguments not in parens/brackets,
+	//   then attribute selectors and non-pseudos (denoted by :),
+	//   then anything else
+	// These preferences are here to reduce the number of selectors
+	//   needing tokenize in the PSEUDO preFilter
+	pseudos = ":(" + characterEncoding + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + attributes + ")|[^:]|\\\\.)*|.*))\\)|)",
+
+	// For matchExpr.POS and matchExpr.needsContext
+	pos = ":(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace +
+		"*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)",
+
+	// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
+	rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
+
+	rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
+	rcombinators = new RegExp( "^" + whitespace + "*([\\x20\\t\\r\\n\\f>+~])" + whitespace + "*" ),
+	rpseudo = new RegExp( pseudos ),
+
+	// Easily-parseable/retrievable ID or TAG or CLASS selectors
+	rquickExpr = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,
+
+	rnot = /^:not/,
+	rsibling = /[\x20\t\r\n\f]*[+~]/,
+	rendsWithNot = /:not\($/,
+
+	rheader = /h\d/i,
+	rinputs = /input|select|textarea|button/i,
+
+	rbackslash = /\\(?!\\)/g,
+
+	matchExpr = {
+		"ID": new RegExp( "^#(" + characterEncoding + ")" ),
+		"CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ),
+		"NAME": new RegExp( "^\\[name=['\"]?(" + characterEncoding + ")['\"]?\\]" ),
+		"TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ),
+		"ATTR": new RegExp( "^" + attributes ),
+		"PSEUDO": new RegExp( "^" + pseudos ),
+		"POS": new RegExp( pos, "i" ),
+		"CHILD": new RegExp( "^:(only|nth|first|last)-child(?:\\(" + whitespace +
+			"*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
+			"*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
+		// For use in libraries implementing .is()
+		"needsContext": new RegExp( "^" + whitespace + "*[>+~]|" + pos, "i" )
+	},
+
+	// Support
+
+	// Used for testing something on an element
+	assert = function( fn ) {
+		var div = document.createElement("div");
+
+		try {
+			return fn( div );
+		} catch (e) {
+			return false;
+		} finally {
+			// release memory in IE
+			div = null;
+		}
+	},
+
+	// Check if getElementsByTagName("*") returns only elements
+	assertTagNameNoComments = assert(function( div ) {
+		div.appendChild( document.createComment("") );
+		return !div.getElementsByTagName("*").length;
+	}),
+
+	// Check if getAttribute returns normalized href attributes
+	assertHrefNotNormalized = assert(function( div ) {
+		div.innerHTML = "<a href='#'></a>";
+		return div.firstChild && typeof div.firstChild.getAttribute !== strundefined &&
+			div.firstChild.getAttribute("href") === "#";
+	}),
+
+	// Check if attributes should be retrieved by attribute nodes
+	assertAttributes = assert(function( div ) {
+		div.innerHTML = "<select></select>";
+		var type = typeof div.lastChild.getAttribute("multiple");
+		// IE8 returns a string for some attributes even when not present
+		return type !== "boolean" && type !== "string";
+	}),
+
+	// Check if getElementsByClassName can be trusted
+	assertUsableClassName = assert(function( div ) {
+		// Opera can't find a second classname (in 9.6)
+		div.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>";
+		if ( !div.getElementsByClassName || !div.getElementsByClassName("e").length ) {
+			return false;
+		}
+
+		// Safari 3.2 caches class attributes and doesn't catch changes
+		div.lastChild.className = "e";
+		return div.getElementsByClassName("e").length === 2;
+	}),
+
+	// Check if getElementById returns elements by name
+	// Check if getElementsByName privileges form controls or returns elements by ID
+	assertUsableName = assert(function( div ) {
+		// Inject content
+		div.id = expando + 0;
+		div.innerHTML = "<a name='" + expando + "'></a><div name='" + expando + "'></div>";
+		docElem.insertBefore( div, docElem.firstChild );
+
+		// Test
+		var pass = document.getElementsByName &&
+			// buggy browsers will return fewer than the correct 2
+			document.getElementsByName( expando ).length === 2 +
+			// buggy browsers will return more than the correct 0
+			document.getElementsByName( expando + 0 ).length;
+		assertGetIdNotName = !document.getElementById( expando );
+
+		// Cleanup
+		docElem.removeChild( div );
+
+		return pass;
+	});
+
+// If slice is not available, provide a backup
+try {
+	slice.call( docElem.childNodes, 0 )[0].nodeType;
+} catch ( e ) {
+	slice = function( i ) {
+		var elem,
+			results = [];
+		for ( ; (elem = this[i]); i++ ) {
+			results.push( elem );
+		}
+		return results;
+	};
+}
+
+function Sizzle( selector, context, results, seed ) {
+	results = results || [];
+	context = context || document;
+	var match, elem, xml, m,
+		nodeType = context.nodeType;
+
+	if ( !selector || typeof selector !== "string" ) {
+		return results;
+	}
+
+	if ( nodeType !== 1 && nodeType !== 9 ) {
+		return [];
+	}
+
+	xml = isXML( context );
+
+	if ( !xml && !seed ) {
+		if ( (match = rquickExpr.exec( selector )) ) {
+			// Speed-up: Sizzle("#ID")
+			if ( (m = match[1]) ) {
+				if ( nodeType === 9 ) {
+					elem = context.getElementById( m );
+					// Check parentNode to catch when Blackberry 4.6 returns
+					// nodes that are no longer in the document #6963
+					if ( elem && elem.parentNode ) {
+						// Handle the case where IE, Opera, and Webkit return items
+						// by name instead of ID
+						if ( elem.id === m ) {
+							results.push( elem );
+							return results;
+						}
+					} else {
+						return results;
+					}
+				} else {
+					// Context is not a document
+					if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) &&
+						contains( context, elem ) && elem.id === m ) {
+						results.push( elem );
+						return results;
+					}
+				}
+
+			// Speed-up: Sizzle("TAG")
+			} else if ( match[2] ) {
+				push.apply( results, slice.call(context.getElementsByTagName( selector ), 0) );
+				return results;
+
+			// Speed-up: Sizzle(".CLASS")
+			} else if ( (m = match[3]) && assertUsableClassName && context.getElementsByClassName ) {
+				push.apply( results, slice.call(context.getElementsByClassName( m ), 0) );
+				return results;
+			}
+		}
+	}
+
+	// All others
+	return select( selector.replace( rtrim, "$1" ), context, results, seed, xml );
+}
+
+Sizzle.matches = function( expr, elements ) {
+	return Sizzle( expr, null, null, elements );
+};
+
+Sizzle.matchesSelector = function( elem, expr ) {
+	return Sizzle( expr, null, null, [ elem ] ).length > 0;
+};
+
+// Returns a function to use in pseudos for input types
+function createInputPseudo( type ) {
+	return function( elem ) {
+		var name = elem.nodeName.toLowerCase();
+		return name === "input" && elem.type === type;
+	};
+}
+
+// Returns a function to use in pseudos for buttons
+function createButtonPseudo( type ) {
+	return function( elem ) {
+		var name = elem.nodeName.toLowerCase();
+		return (name === "input" || name === "button") && elem.type === type;
+	};
+}
+
+// Returns a function to use in pseudos for positionals
+function createPositionalPseudo( fn ) {
+	return markFunction(function( argument ) {
+		argument = +argument;
+		return markFunction(function( seed, matches ) {
+			var j,
+				matchIndexes = fn( [], seed.length, argument ),
+				i = matchIndexes.length;
+
+			// Match elements found at the specified indexes
+			while ( i-- ) {
+				if ( seed[ (j = matchIndexes[i]) ] ) {
+					seed[j] = !(matches[j] = seed[j]);
+				}
+			}
+		});
+	});
+}
+
+/**
+ * Utility function for retrieving the text value of an array of DOM nodes
+ * @param {Array|Element} elem
+ */
+getText = Sizzle.getText = function( elem ) {
+	var node,
+		ret = "",
+		i = 0,
+		nodeType = elem.nodeType;
+
+	if ( nodeType ) {
+		if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
+			// Use textContent for elements
+			// innerText usage removed for consistency of new lines (see #11153)
+			if ( typeof elem.textContent === "string" ) {
+				return elem.textContent;
+			} else {
+				// Traverse its children
+				for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+					ret += getText( elem );
+				}
+			}
+		} else if ( nodeType === 3 || nodeType === 4 ) {
+			return elem.nodeValue;
+		}
+		// Do not include comment or processing instruction nodes
+	} else {
+
+		// If no nodeType, this is expected to be an array
+		for ( ; (node = elem[i]); i++ ) {
+			// Do not traverse comment nodes
+			ret += getText( node );
+		}
+	}
+	return ret;
+};
+
+isXML = Sizzle.isXML = function( elem ) {
+	// documentElement is verified for cases where it doesn't yet exist
+	// (such as loading iframes in IE - #4833)
+	var documentElement = elem && (elem.ownerDocument || elem).documentElement;
+	return documentElement ? documentElement.nodeName !== "HTML" : false;
+};
+
+// Element contains another
+contains = Sizzle.contains = docElem.contains ?
+	function( a, b ) {
+		var adown = a.nodeType === 9 ? a.documentElement : a,
+			bup = b && b.parentNode;
+		return a === bup || !!( bup && bup.nodeType === 1 && adown.contains && adown.contains(bup) );
+	} :
+	docElem.compareDocumentPosition ?
+	function( a, b ) {
+		return b && !!( a.compareDocumentPosition( b ) & 16 );
+	} :
+	function( a, b ) {
+		while ( (b = b.parentNode) ) {
+			if ( b === a ) {
+				return true;
+			}
+		}
+		return false;
+	};
+
+Sizzle.attr = function( elem, name ) {
+	var val,
+		xml = isXML( elem );
+
+	if ( !xml ) {
+		name = name.toLowerCase();
+	}
+	if ( (val = Expr.attrHandle[ name ]) ) {
+		return val( elem );
+	}
+	if ( xml || assertAttributes ) {
+		return elem.getAttribute( name );
+	}
+	val = elem.getAttributeNode( name );
+	return val ?
+		typeof elem[ name ] === "boolean" ?
+			elem[ name ] ? name : null :
+			val.specified ? val.value : null :
+		null;
+};
+
+Expr = Sizzle.selectors = {
+
+	// Can be adjusted by the user
+	cacheLength: 50,
+
+	createPseudo: markFunction,
+
+	match: matchExpr,
+
+	// IE6/7 return a modified href
+	attrHandle: assertHrefNotNormalized ?
+		{} :
+		{
+			"href": function( elem ) {
+				return elem.getAttribute( "href", 2 );
+			},
+			"type": function( elem ) {
+				return elem.getAttribute("type");
+			}
+		},
+
+	find: {
+		"ID": assertGetIdNotName ?
+			function( id, context, xml ) {
+				if ( typeof context.getElementById !== strundefined && !xml ) {
+					var m = context.getElementById( id );
+					// Check parentNode to catch when Blackberry 4.6 returns
+					// nodes that are no longer in the document #6963
+					return m && m.parentNode ? [m] : [];
+				}
+			} :
+			function( id, context, xml ) {
+				if ( typeof context.getElementById !== strundefined && !xml ) {
+					var m = context.getElementById( id );
+
+					return m ?
+						m.id === id || typeof m.getAttributeNode !== strundefined && m.getAttributeNode("id").value === id ?
+							[m] :
+							undefined :
+						[];
+				}
+			},
+
+		"TAG": assertTagNameNoComments ?
+			function( tag, context ) {
+				if ( typeof context.getElementsByTagName !== strundefined ) {
+					return context.getElementsByTagName( tag );
+				}
+			} :
+			function( tag, context ) {
+				var results = context.getElementsByTagName( tag );
+
+				// Filter out possible comments
+				if ( tag === "*" ) {
+					var elem,
+						tmp = [],
+						i = 0;
+
+					for ( ; (elem = results[i]); i++ ) {
+						if ( elem.nodeType === 1 ) {
+							tmp.push( elem );
+						}
+					}
+
+					return tmp;
+				}
+				return results;
+			},
+
+		"NAME": assertUsableName && function( tag, context ) {
+			if ( typeof context.getElementsByName !== strundefined ) {
+				return context.getElementsByName( name );
+			}
+		},
+
+		"CLASS": assertUsableClassName && function( className, context, xml ) {
+			if ( typeof context.getElementsByClassName !== strundefined && !xml ) {
+				return context.getElementsByClassName( className );
+			}
+		}
+	},
+
+	relative: {
+		">": { dir: "parentNode", first: true },
+		" ": { dir: "parentNode" },
+		"+": { dir: "previousSibling", first: true },
+		"~": { dir: "previousSibling" }
+	},
+
+	preFilter: {
+		"ATTR": function( match ) {
+			match[1] = match[1].replace( rbackslash, "" );
+
+			// Move the given value to match[3] whether quoted or unquoted
+			match[3] = ( match[4] || match[5] || "" ).replace( rbackslash, "" );
+
+			if ( match[2] === "~=" ) {
+				match[3] = " " + match[3] + " ";
+			}
+
+			return match.slice( 0, 4 );
+		},
+
+		"CHILD": function( match ) {
+			/* matches from matchExpr["CHILD"]
+				1 type (only|nth|...)
+				2 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
+				3 xn-component of xn+y argument ([+-]?\d*n|)
+				4 sign of xn-component
+				5 x of xn-component
+				6 sign of y-component
+				7 y of y-component
+			*/
+			match[1] = match[1].toLowerCase();
+
+			if ( match[1] === "nth" ) {
+				// nth-child requires argument
+				if ( !match[2] ) {
+					Sizzle.error( match[0] );
+				}
+
+				// numeric x and y parameters for Expr.filter.CHILD
+				// remember that false/true cast respectively to 0/1
+				match[3] = +( match[3] ? match[4] + (match[5] || 1) : 2 * ( match[2] === "even" || match[2] === "odd" ) );
+				match[4] = +( ( match[6] + match[7] ) || match[2] === "odd" );
+
+			// other types prohibit arguments
+			} else if ( match[2] ) {
+				Sizzle.error( match[0] );
+			}
+
+			return match;
+		},
+
+		"PSEUDO": function( match ) {
+			var unquoted, excess;
+			if ( matchExpr["CHILD"].test( match[0] ) ) {
+				return null;
+			}
+
+			if ( match[3] ) {
+				match[2] = match[3];
+			} else if ( (unquoted = match[4]) ) {
+				// Only check arguments that contain a pseudo
+				if ( rpseudo.test(unquoted) &&
+					// Get excess from tokenize (recursively)
+					(excess = tokenize( unquoted, true )) &&
+					// advance to the next closing parenthesis
+					(excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
+
+					// excess is a negative index
+					unquoted = unquoted.slice( 0, excess );
+					match[0] = match[0].slice( 0, excess );
+				}
+				match[2] = unquoted;
+			}
+
+			// Return only captures needed by the pseudo filter method (type and argument)
+			return match.slice( 0, 3 );
+		}
+	},
+
+	filter: {
+		"ID": assertGetIdNotName ?
+			function( id ) {
+				id = id.replace( rbackslash, "" );
+				return function( elem ) {
+					return elem.getAttribute("id") === id;
+				};
+			} :
+			function( id ) {
+				id = id.replace( rbackslash, "" );
+				return function( elem ) {
+					var node = typeof elem.getAttributeNode !== strundefined && elem.getAttributeNode("id");
+					return node && node.value === id;
+				};
+			},
+
+		"TAG": function( nodeName ) {
+			if ( nodeName === "*" ) {
+				return function() { return true; };
+			}
+			nodeName = nodeName.replace( rbackslash, "" ).toLowerCase();
+
+			return function( elem ) {
+				return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
+			};
+		},
+
+		"CLASS": function( className ) {
+			var pattern = classCache[ expando ][ className + " " ];
+
+			return pattern ||
+				(pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
+				classCache( className, function( elem ) {
+					return pattern.test( elem.className || (typeof elem.getAttribute !== strundefined && elem.getAttribute("class")) || "" );
+				});
+		},
+
+		"ATTR": function( name, operator, check ) {
+			return function( elem, context ) {
+				var result = Sizzle.attr( elem, name );
+
+				if ( result == null ) {
+					return operator === "!=";
+				}
+				if ( !operator ) {
+					return true;
+				}
+
+				result += "";
+
+				return operator === "=" ? result === check :
+					operator === "!=" ? result !== check :
+					operator === "^=" ? check && result.indexOf( check ) === 0 :
+					operator === "*=" ? check && result.indexOf( check ) > -1 :
+					operator === "$=" ? check && result.substr( result.length - check.length ) === check :
+					operator === "~=" ? ( " " + result + " " ).indexOf( check ) > -1 :
+					operator === "|=" ? result === check || result.substr( 0, check.length + 1 ) === check + "-" :
+					false;
+			};
+		},
+
+		"CHILD": function( type, argument, first, last ) {
+
+			if ( type === "nth" ) {
+				return function( elem ) {
+					var node, diff,
+						parent = elem.parentNode;
+
+					if ( first === 1 && last === 0 ) {
+						return true;
+					}
+
+					if ( parent ) {
+						diff = 0;
+						for ( node = parent.firstChild; node; node = node.nextSibling ) {
+							if ( node.nodeType === 1 ) {
+								diff++;
+								if ( elem === node ) {
+									break;
+								}
+							}
+						}
+					}
+
+					// Incorporate the offset (or cast to NaN), then check against cycle size
+					diff -= last;
+					return diff === first || ( diff % first === 0 && diff / first >= 0 );
+				};
+			}
+
+			return function( elem ) {
+				var node = elem;
+
+				switch ( type ) {
+					case "only":
+					case "first":
+						while ( (node = node.previousSibling) ) {
+							if ( node.nodeType === 1 ) {
+								return false;
+							}
+						}
+
+						if ( type === "first" ) {
+							return true;
+						}
+
+						node = elem;
+
+						/* falls through */
+					case "last":
+						while ( (node = node.nextSibling) ) {
+							if ( node.nodeType === 1 ) {
+								return false;
+							}
+						}
+
+						return true;
+				}
+			};
+		},
+
+		"PSEUDO": function( pseudo, argument ) {
+			// pseudo-class names are case-insensitive
+			// http://www.w3.org/TR/selectors/#pseudo-classes
+			// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
+			// Remember that setFilters inherits from pseudos
+			var args,
+				fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
+					Sizzle.error( "unsupported pseudo: " + pseudo );
+
+			// The user may use createPseudo to indicate that
+			// arguments are needed to create the filter function
+			// just as Sizzle does
+			if ( fn[ expando ] ) {
+				return fn( argument );
+			}
+
+			// But maintain support for old signatures
+			if ( fn.length > 1 ) {
+				args = [ pseudo, pseudo, "", argument ];
+				return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
+					markFunction(function( seed, matches ) {
+						var idx,
+							matched = fn( seed, argument ),
+							i = matched.length;
+						while ( i-- ) {
+							idx = indexOf.call( seed, matched[i] );
+							seed[ idx ] = !( matches[ idx ] = matched[i] );
+						}
+					}) :
+					function( elem ) {
+						return fn( elem, 0, args );
+					};
+			}
+
+			return fn;
+		}
+	},
+
+	pseudos: {
+		"not": markFunction(function( selector ) {
+			// Trim the selector passed to compile
+			// to avoid treating leading and trailing
+			// spaces as combinators
+			var input = [],
+				results = [],
+				matcher = compile( selector.replace( rtrim, "$1" ) );
+
+			return matcher[ expando ] ?
+				markFunction(function( seed, matches, context, xml ) {
+					var elem,
+						unmatched = matcher( seed, null, xml, [] ),
+						i = seed.length;
+
+					// Match elements unmatched by `matcher`
+					while ( i-- ) {
+						if ( (elem = unmatched[i]) ) {
+							seed[i] = !(matches[i] = elem);
+						}
+					}
+				}) :
+				function( elem, context, xml ) {
+					input[0] = elem;
+					matcher( input, null, xml, results );
+					return !results.pop();
+				};
+		}),
+
+		"has": markFunction(function( selector ) {
+			return function( elem ) {
+				return Sizzle( selector, elem ).length > 0;
+			};
+		}),
+
+		"contains": markFunction(function( text ) {
+			return function( elem ) {
+				return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
+			};
+		}),
+
+		"enabled": function( elem ) {
+			return elem.disabled === false;
+		},
+
+		"disabled": function( elem ) {
+			return elem.disabled === true;
+		},
+
+		"checked": function( elem ) {
+			// In CSS3, :checked should return both checked and selected elements
+			// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+			var nodeName = elem.nodeName.toLowerCase();
+			return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
+		},
+
+		"selected": function( elem ) {
+			// Accessing this property makes selected-by-default
+			// options in Safari work properly
+			if ( elem.parentNode ) {
+				elem.parentNode.selectedIndex;
+			}
+
+			return elem.selected === true;
+		},
+
+		"parent": function( elem ) {
+			return !Expr.pseudos["empty"]( elem );
+		},
+
+		"empty": function( elem ) {
+			// http://www.w3.org/TR/selectors/#empty-pseudo
+			// :empty is only affected by element nodes and content nodes(including text(3), cdata(4)),
+			//   not comment, processing instructions, or others
+			// Thanks to Diego Perini for the nodeName shortcut
+			//   Greater than "@" means alpha characters (specifically not starting with "#" or "?")
+			var nodeType;
+			elem = elem.firstChild;
+			while ( elem ) {
+				if ( elem.nodeName > "@" || (nodeType = elem.nodeType) === 3 || nodeType === 4 ) {
+					return false;
+				}
+				elem = elem.nextSibling;
+			}
+			return true;
+		},
+
+		"header": function( elem ) {
+			return rheader.test( elem.nodeName );
+		},
+
+		"text": function( elem ) {
+			var type, attr;
+			// IE6 and 7 will map elem.type to 'text' for new HTML5 types (search, etc)
+			// use getAttribute instead to test this case
+			return elem.nodeName.toLowerCase() === "input" &&
+				(type = elem.type) === "text" &&
+				( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === type );
+		},
+
+		// Input types
+		"radio": createInputPseudo("radio"),
+		"checkbox": createInputPseudo("checkbox"),
+		"file": createInputPseudo("file"),
+		"password": createInputPseudo("password"),
+		"image": createInputPseudo("image"),
+
+		"submit": createButtonPseudo("submit"),
+		"reset": createButtonPseudo("reset"),
+
+		"button": function( elem ) {
+			var name = elem.nodeName.toLowerCase();
+			return name === "input" && elem.type === "button" || name === "button";
+		},
+
+		"input": function( elem ) {
+			return rinputs.test( elem.nodeName );
+		},
+
+		"focus": function( elem ) {
+			var doc = elem.ownerDocument;
+			return elem === doc.activeElement && (!doc.hasFocus || doc.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
+		},
+
+		"active": function( elem ) {
+			return elem === elem.ownerDocument.activeElement;
+		},
+
+		// Positional types
+		"first": createPositionalPseudo(function() {
+			return [ 0 ];
+		}),
+
+		"last": createPositionalPseudo(function( matchIndexes, length ) {
+			return [ length - 1 ];
+		}),
+
+		"eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
+			return [ argument < 0 ? argument + length : argument ];
+		}),
+
+		"even": createPositionalPseudo(function( matchIndexes, length ) {
+			for ( var i = 0; i < length; i += 2 ) {
+				matchIndexes.push( i );
+			}
+			return matchIndexes;
+		}),
+
+		"odd": createPositionalPseudo(function( matchIndexes, length ) {
+			for ( var i = 1; i < length; i += 2 ) {
+				matchIndexes.push( i );
+			}
+			return matchIndexes;
+		}),
+
+		"lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+			for ( var i = argument < 0 ? argument + length : argument; --i >= 0; ) {
+				matchIndexes.push( i );
+			}
+			return matchIndexes;
+		}),
+
+		"gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+			for ( var i = argument < 0 ? argument + length : argument; ++i < length; ) {
+				matchIndexes.push( i );
+			}
+			return matchIndexes;
+		})
+	}
+};
+
+function siblingCheck( a, b, ret ) {
+	if ( a === b ) {
+		return ret;
+	}
+
+	var cur = a.nextSibling;
+
+	while ( cur ) {
+		if ( cur === b ) {
+			return -1;
+		}
+
+		cur = cur.nextSibling;
+	}
+
+	return 1;
+}
+
+sortOrder = docElem.compareDocumentPosition ?
+	function( a, b ) {
+		if ( a === b ) {
+			hasDuplicate = true;
+			return 0;
+		}
+
+		return ( !a.compareDocumentPosition || !b.compareDocumentPosition ?
+			a.compareDocumentPosition :
+			a.compareDocumentPosition(b) & 4
+		) ? -1 : 1;
+	} :
+	function( a, b ) {
+		// The nodes are identical, we can exit early
+		if ( a === b ) {
+			hasDuplicate = true;
+			return 0;
+
+		// Fallback to using sourceIndex (in IE) if it's available on both nodes
+		} else if ( a.sourceIndex && b.sourceIndex ) {
+			return a.sourceIndex - b.sourceIndex;
+		}
+
+		var al, bl,
+			ap = [],
+			bp = [],
+			aup = a.parentNode,
+			bup = b.parentNode,
+			cur = aup;
+
+		// If the nodes are siblings (or identical) we can do a quick check
+		if ( aup === bup ) {
+			return siblingCheck( a, b );
+
+		// If no parents were found then the nodes are disconnected
+		} else if ( !aup ) {
+			return -1;
+
+		} else if ( !bup ) {
+			return 1;
+		}
+
+		// Otherwise they're somewhere else in the tree so we need
+		// to build up a full list of the parentNodes for comparison
+		while ( cur ) {
+			ap.unshift( cur );
+			cur = cur.parentNode;
+		}
+
+		cur = bup;
+
+		while ( cur ) {
+			bp.unshift( cur );
+			cur = cur.parentNode;
+		}
+
+		al = ap.length;
+		bl = bp.length;
+
+		// Start walking down the tree looking for a discrepancy
+		for ( var i = 0; i < al && i < bl; i++ ) {
+			if ( ap[i] !== bp[i] ) {
+				return siblingCheck( ap[i], bp[i] );
+			}
+		}
+
+		// We ended someplace up the tree so do a sibling check
+		return i === al ?
+			siblingCheck( a, bp[i], -1 ) :
+			siblingCheck( ap[i], b, 1 );
+	};
+
+// Always assume the presence of duplicates if sort doesn't
+// pass them to our comparison function (as in Google Chrome).
+[0, 0].sort( sortOrder );
+baseHasDuplicate = !hasDuplicate;
+
+// Document sorting and removing duplicates
+Sizzle.uniqueSort = function( results ) {
+	var elem,
+		duplicates = [],
+		i = 1,
+		j = 0;
+
+	hasDuplicate = baseHasDuplicate;
+	results.sort( sortOrder );
+
+	if ( hasDuplicate ) {
+		for ( ; (elem = results[i]); i++ ) {
+			if ( elem === results[ i - 1 ] ) {
+				j = duplicates.push( i );
+			}
+		}
+		while ( j-- ) {
+			results.splice( duplicates[ j ], 1 );
+		}
+	}
+
+	return results;
+};
+
+Sizzle.error = function( msg ) {
+	throw new Error( "Syntax error, unrecognized expression: " + msg );
+};
+
+function tokenize( selector, parseOnly ) {
+	var matched, match, tokens, type,
+		soFar, groups, preFilters,
+		cached = tokenCache[ expando ][ selector + " " ];
+
+	if ( cached ) {
+		return parseOnly ? 0 : cached.slice( 0 );
+	}
+
+	soFar = selector;
+	groups = [];
+	preFilters = Expr.preFilter;
+
+	while ( soFar ) {
+
+		// Comma and first run
+		if ( !matched || (match = rcomma.exec( soFar )) ) {
+			if ( match ) {
+				// Don't consume trailing commas as valid
+				soFar = soFar.slice( match[0].length ) || soFar;
+			}
+			groups.push( tokens = [] );
+		}
+
+		matched = false;
+
+		// Combinators
+		if ( (match = rcombinators.exec( soFar )) ) {
+			tokens.push( matched = new Token( match.shift() ) );
+			soFar = soFar.slice( matched.length );
+
+			// Cast descendant combinators to space
+			matched.type = match[0].replace( rtrim, " " );
+		}
+
+		// Filters
+		for ( type in Expr.filter ) {
+			if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
+				(match = preFilters[ type ]( match ))) ) {
+
+				tokens.push( matched = new Token( match.shift() ) );
+				soFar = soFar.slice( matched.length );
+				matched.type = type;
+				matched.matches = match;
+			}
+		}
+
+		if ( !matched ) {
+			break;
+		}
+	}
+
+	// Return the length of the invalid excess
+	// if we're just parsing
+	// Otherwise, throw an error or return tokens
+	return parseOnly ?
+		soFar.length :
+		soFar ?
+			Sizzle.error( selector ) :
+			// Cache the tokens
+			tokenCache( selector, groups ).slice( 0 );
+}
+
+function addCombinator( matcher, combinator, base ) {
+	var dir = combinator.dir,
+		checkNonElements = base && combinator.dir === "parentNode",
+		doneName = done++;
+
+	return combinator.first ?
+		// Check against closest ancestor/preceding element
+		function( elem, context, xml ) {
+			while ( (elem = elem[ dir ]) ) {
+				if ( checkNonElements || elem.nodeType === 1  ) {
+					return matcher( elem, context, xml );
+				}
+			}
+		} :
+
+		// Check against all ancestor/preceding elements
+		function( elem, context, xml ) {
+			// We can't set arbitrary data on XML nodes, so they don't benefit from dir caching
+			if ( !xml ) {
+				var cache,
+					dirkey = dirruns + " " + doneName + " ",
+					cachedkey = dirkey + cachedruns;
+				while ( (elem = elem[ dir ]) ) {
+					if ( checkNonElements || elem.nodeType === 1 ) {
+						if ( (cache = elem[ expando ]) === cachedkey ) {
+							return elem.sizset;
+						} else if ( typeof cache === "string" && cache.indexOf(dirkey) === 0 ) {
+							if ( elem.sizset ) {
+								return elem;
+							}
+						} else {
+							elem[ expando ] = cachedkey;
+							if ( matcher( elem, context, xml ) ) {
+								elem.sizset = true;
+								return elem;
+							}
+							elem.sizset = false;
+						}
+					}
+				}
+			} else {
+				while ( (elem = elem[ dir ]) ) {
+					if ( checkNonElements || elem.nodeType === 1 ) {
+						if ( matcher( elem, context, xml ) ) {
+							return elem;
+						}
+					}
+				}
+			}
+		};
+}
+
+function elementMatcher( matchers ) {
+	return matchers.length > 1 ?
+		function( elem, context, xml ) {
+			var i = matchers.length;
+			while ( i-- ) {
+				if ( !matchers[i]( elem, context, xml ) ) {
+					return false;
+				}
+			}
+			return true;
+		} :
+		matchers[0];
+}
+
+function condense( unmatched, map, filter, context, xml ) {
+	var elem,
+		newUnmatched = [],
+		i = 0,
+		len = unmatched.length,
+		mapped = map != null;
+
+	for ( ; i < len; i++ ) {
+		if ( (elem = unmatched[i]) ) {
+			if ( !filter || filter( elem, context, xml ) ) {
+				newUnmatched.push( elem );
+				if ( mapped ) {
+					map.push( i );
+				}
+			}
+		}
+	}
+
+	return newUnmatched;
+}
+
+function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
+	if ( postFilter && !postFilter[ expando ] ) {
+		postFilter = setMatcher( postFilter );
+	}
+	if ( postFinder && !postFinder[ expando ] ) {
+		postFinder = setMatcher( postFinder, postSelector );
+	}
+	return markFunction(function( seed, results, context, xml ) {
+		var temp, i, elem,
+			preMap = [],
+			postMap = [],
+			preexisting = results.length,
+
+			// Get initial elements from seed or context
+			elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
+
+			// Prefilter to get matcher input, preserving a map for seed-results synchronization
+			matcherIn = preFilter && ( seed || !selector ) ?
+				condense( elems, preMap, preFilter, context, xml ) :
+				elems,
+
+			matcherOut = matcher ?
+				// If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
+				postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
+
+					// ...intermediate processing is necessary
+					[] :
+
+					// ...otherwise use results directly
+					results :
+				matcherIn;
+
+		// Find primary matches
+		if ( matcher ) {
+			matcher( matcherIn, matcherOut, context, xml );
+		}
+
+		// Apply postFilter
+		if ( postFilter ) {
+			temp = condense( matcherOut, postMap );
+			postFilter( temp, [], context, xml );
+
+			// Un-match failing elements by moving them back to matcherIn
+			i = temp.length;
+			while ( i-- ) {
+				if ( (elem = temp[i]) ) {
+					matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
+				}
+			}
+		}
+
+		if ( seed ) {
+			if ( postFinder || preFilter ) {
+				if ( postFinder ) {
+					// Get the final matcherOut by condensing this intermediate into postFinder contexts
+					temp = [];
+					i = matcherOut.length;
+					while ( i-- ) {
+						if ( (elem = matcherOut[i]) ) {
+							// Restore matcherIn since elem is not yet a final match
+							temp.push( (matcherIn[i] = elem) );
+						}
+					}
+					postFinder( null, (matcherOut = []), temp, xml );
+				}
+
+				// Move matched elements from seed to results to keep them synchronized
+				i = matcherOut.length;
+				while ( i-- ) {
+					if ( (elem = matcherOut[i]) &&
+						(temp = postFinder ? indexOf.call( seed, elem ) : preMap[i]) > -1 ) {
+
+						seed[temp] = !(results[temp] = elem);
+					}
+				}
+			}
+
+		// Add elements to results, through postFinder if defined
+		} else {
+			matcherOut = condense(
+				matcherOut === results ?
+					matcherOut.splice( preexisting, matcherOut.length ) :
+					matcherOut
+			);
+			if ( postFinder ) {
+				postFinder( null, results, matcherOut, xml );
+			} else {
+				push.apply( results, matcherOut );
+			}
+		}
+	});
+}
+
+function matcherFromTokens( tokens ) {
+	var checkContext, matcher, j,
+		len = tokens.length,
+		leadingRelative = Expr.relative[ tokens[0].type ],
+		implicitRelative = leadingRelative || Expr.relative[" "],
+		i = leadingRelative ? 1 : 0,
+
+		// The foundational matcher ensures that elements are reachable from top-level context(s)
+		matchContext = addCombinator( function( elem ) {
+			return elem === checkContext;
+		}, implicitRelative, true ),
+		matchAnyContext = addCombinator( function( elem ) {
+			return indexOf.call( checkContext, elem ) > -1;
+		}, implicitRelative, true ),
+		matchers = [ function( elem, context, xml ) {
+			return ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
+				(checkContext = context).nodeType ?
+					matchContext( elem, context, xml ) :
+					matchAnyContext( elem, context, xml ) );
+		} ];
+
+	for ( ; i < len; i++ ) {
+		if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
+			matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ];
+		} else {
+			matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
+
+			// Return special upon seeing a positional matcher
+			if ( matcher[ expando ] ) {
+				// Find the next relative operator (if any) for proper handling
+				j = ++i;
+				for ( ; j < len; j++ ) {
+					if ( Expr.relative[ tokens[j].type ] ) {
+						break;
+					}
+				}
+				return setMatcher(
+					i > 1 && elementMatcher( matchers ),
+					i > 1 && tokens.slice( 0, i - 1 ).join("").replace( rtrim, "$1" ),
+					matcher,
+					i < j && matcherFromTokens( tokens.slice( i, j ) ),
+					j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
+					j < len && tokens.join("")
+				);
+			}
+			matchers.push( matcher );
+		}
+	}
+
+	return elementMatcher( matchers );
+}
+
+function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
+	var bySet = setMatchers.length > 0,
+		byElement = elementMatchers.length > 0,
+		superMatcher = function( seed, context, xml, results, expandContext ) {
+			var elem, j, matcher,
+				setMatched = [],
+				matchedCount = 0,
+				i = "0",
+				unmatched = seed && [],
+				outermost = expandContext != null,
+				contextBackup = outermostContext,
+				// We must always have either seed elements or context
+				elems = seed || byElement && Expr.find["TAG"]( "*", expandContext && context.parentNode || context ),
+				// Nested matchers should use non-integer dirruns
+				dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.E);
+
+			if ( outermost ) {
+				outermostContext = context !== document && context;
+				cachedruns = superMatcher.el;
+			}
+
+			// Add elements passing elementMatchers directly to results
+			for ( ; (elem = elems[i]) != null; i++ ) {
+				if ( byElement && elem ) {
+					for ( j = 0; (matcher = elementMatchers[j]); j++ ) {
+						if ( matcher( elem, context, xml ) ) {
+							results.push( elem );
+							break;
+						}
+					}
+					if ( outermost ) {
+						dirruns = dirrunsUnique;
+						cachedruns = ++superMatcher.el;
+					}
+				}
+
+				// Track unmatched elements for set filters
+				if ( bySet ) {
+					// They will have gone through all possible matchers
+					if ( (elem = !matcher && elem) ) {
+						matchedCount--;
+					}
+
+					// Lengthen the array for every element, matched or not
+					if ( seed ) {
+						unmatched.push( elem );
+					}
+				}
+			}
+
+			// Apply set filters to unmatched elements
+			matchedCount += i;
+			if ( bySet && i !== matchedCount ) {
+				for ( j = 0; (matcher = setMatchers[j]); j++ ) {
+					matcher( unmatched, setMatched, context, xml );
+				}
+
+				if ( seed ) {
+					// Reintegrate element matches to eliminate the need for sorting
+					if ( matchedCount > 0 ) {
+						while ( i-- ) {
+							if ( !(unmatched[i] || setMatched[i]) ) {
+								setMatched[i] = pop.call( results );
+							}
+						}
+					}
+
+					// Discard index placeholder values to get only actual matches
+					setMatched = condense( setMatched );
+				}
+
+				// Add matches to results
+				push.apply( results, setMatched );
+
+				// Seedless set matches succeeding multiple successful matchers stipulate sorting
+				if ( outermost && !seed && setMatched.length > 0 &&
+					( matchedCount + setMatchers.length ) > 1 ) {
+
+					Sizzle.uniqueSort( results );
+				}
+			}
+
+			// Override manipulation of globals by nested matchers
+			if ( outermost ) {
+				dirruns = dirrunsUnique;
+				outermostContext = contextBackup;
+			}
+
+			return unmatched;
+		};
+
+	superMatcher.el = 0;
+	return bySet ?
+		markFunction( superMatcher ) :
+		superMatcher;
+}
+
+compile = Sizzle.compile = function( selector, group /* Internal Use Only */ ) {
+	var i,
+		setMatchers = [],
+		elementMatchers = [],
+		cached = compilerCache[ expando ][ selector + " " ];
+
+	if ( !cached ) {
+		// Generate a function of recursive functions that can be used to check each element
+		if ( !group ) {
+			group = tokenize( selector );
+		}
+		i = group.length;
+		while ( i-- ) {
+			cached = matcherFromTokens( group[i] );
+			if ( cached[ expando ] ) {
+				setMatchers.push( cached );
+			} else {
+				elementMatchers.push( cached );
+			}
+		}
+
+		// Cache the compiled function
+		cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
+	}
+	return cached;
+};
+
+function multipleContexts( selector, contexts, results ) {
+	var i = 0,
+		len = contexts.length;
+	for ( ; i < len; i++ ) {
+		Sizzle( selector, contexts[i], results );
+	}
+	return results;
+}
+
+function select( selector, context, results, seed, xml ) {
+	var i, tokens, token, type, find,
+		match = tokenize( selector ),
+		j = match.length;
+
+	if ( !seed ) {
+		// Try to minimize operations if there is only one group
+		if ( match.length === 1 ) {
+
+			// Take a shortcut and set the context if the root selector is an ID
+			tokens = match[0] = match[0].slice( 0 );
+			if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
+					context.nodeType === 9 && !xml &&
+					Expr.relative[ tokens[1].type ] ) {
+
+				context = Expr.find["ID"]( token.matches[0].replace( rbackslash, "" ), context, xml )[0];
+				if ( !context ) {
+					return results;
+				}
+
+				selector = selector.slice( tokens.shift().length );
+			}
+
+			// Fetch a seed set for right-to-left matching
+			for ( i = matchExpr["POS"].test( selector ) ? -1 : tokens.length - 1; i >= 0; i-- ) {
+				token = tokens[i];
+
+				// Abort if we hit a combinator
+				if ( Expr.relative[ (type = token.type) ] ) {
+					break;
+				}
+				if ( (find = Expr.find[ type ]) ) {
+					// Search, expanding context for leading sibling combinators
+					if ( (seed = find(
+						token.matches[0].replace( rbackslash, "" ),
+						rsibling.test( tokens[0].type ) && context.parentNode || context,
+						xml
+					)) ) {
+
+						// If seed is empty or no tokens remain, we can return early
+						tokens.splice( i, 1 );
+						selector = seed.length && tokens.join("");
+						if ( !selector ) {
+							push.apply( results, slice.call( seed, 0 ) );
+							return results;
+						}
+
+						break;
+					}
+				}
+			}
+		}
+	}
+
+	// Compile and execute a filtering function
+	// Provide `match` to avoid retokenization if we modified the selector above
+	compile( selector, match )(
+		seed,
+		context,
+		xml,
+		results,
+		rsibling.test( selector )
+	);
+	return results;
+}
+
+if ( document.querySelectorAll ) {
+	(function() {
+		var disconnectedMatch,
+			oldSelect = select,
+			rescape = /'|\\/g,
+			rattributeQuotes = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,
+
+			// qSa(:focus) reports false when true (Chrome 21), no need to also add to buggyMatches since matches checks buggyQSA
+			// A support test would require too much code (would include document ready)
+			rbuggyQSA = [ ":focus" ],
+
+			// matchesSelector(:active) reports false when true (IE9/Opera 11.5)
+			// A support test would require too much code (would include document ready)
+			// just skip matchesSelector for :active
+			rbuggyMatches = [ ":active" ],
+			matches = docElem.matchesSelector ||
+				docElem.mozMatchesSelector ||
+				docElem.webkitMatchesSelector ||
+				docElem.oMatchesSelector ||
+				docElem.msMatchesSelector;
+
+		// Build QSA regex
+		// Regex strategy adopted from Diego Perini
+		assert(function( div ) {
+			// Select is set to empty string on purpose
+			// This is to test IE's treatment of not explictly
+			// setting a boolean content attribute,
+			// since its presence should be enough
+			// http://bugs.jquery.com/ticket/12359
+			div.innerHTML = "<select><option selected=''></option></select>";
+
+			// IE8 - Some boolean attributes are not treated correctly
+			if ( !div.querySelectorAll("[selected]").length ) {
+				rbuggyQSA.push( "\\[" + whitespace + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)" );
+			}
+
+			// Webkit/Opera - :checked should return selected option elements
+			// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+			// IE8 throws error here (do not put tests after this one)
+			if ( !div.querySelectorAll(":checked").length ) {
+				rbuggyQSA.push(":checked");
+			}
+		});
+
+		assert(function( div ) {
+
+			// Opera 10-12/IE9 - ^= $= *= and empty values
+			// Should not select anything
+			div.innerHTML = "<p test=''></p>";
+			if ( div.querySelectorAll("[test^='']").length ) {
+				rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:\"\"|'')" );
+			}
+
+			// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
+			// IE8 throws error here (do not put tests after this one)
+			div.innerHTML = "<input type='hidden'/>";
+			if ( !div.querySelectorAll(":enabled").length ) {
+				rbuggyQSA.push(":enabled", ":disabled");
+			}
+		});
+
+		// rbuggyQSA always contains :focus, so no need for a length check
+		rbuggyQSA = /* rbuggyQSA.length && */ new RegExp( rbuggyQSA.join("|") );
+
+		select = function( selector, context, results, seed, xml ) {
+			// Only use querySelectorAll when not filtering,
+			// when this is not xml,
+			// and when no QSA bugs apply
+			if ( !seed && !xml && !rbuggyQSA.test( selector ) ) {
+				var groups, i,
+					old = true,
+					nid = expando,
+					newContext = context,
+					newSelector = context.nodeType === 9 && selector;
+
+				// qSA works strangely on Element-rooted queries
+				// We can work around this by specifying an extra ID on the root
+				// and working up from there (Thanks to Andrew Dupont for the technique)
+				// IE 8 doesn't work on object elements
+				if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
+					groups = tokenize( selector );
+
+					if ( (old = context.getAttribute("id")) ) {
+						nid = old.replace( rescape, "\\$&" );
+					} else {
+						context.setAttribute( "id", nid );
+					}
+					nid = "[id='" + nid + "'] ";
+
+					i = groups.length;
+					while ( i-- ) {
+						groups[i] = nid + groups[i].join("");
+					}
+					newContext = rsibling.test( selector ) && context.parentNode || context;
+					newSelector = groups.join(",");
+				}
+
+				if ( newSelector ) {
+					try {
+						push.apply( results, slice.call( newContext.querySelectorAll(
+							newSelector
+						), 0 ) );
+						return results;
+					} catch(qsaError) {
+					} finally {
+						if ( !old ) {
+							context.removeAttribute("id");
+						}
+					}
+				}
+			}
+
+			return oldSelect( selector, context, results, seed, xml );
+		};
+
+		if ( matches ) {
+			assert(function( div ) {
+				// Check to see if it's possible to do matchesSelector
+				// on a disconnected node (IE 9)
+				disconnectedMatch = matches.call( div, "div" );
+
+				// This should fail with an exception
+				// Gecko does not error, returns false instead
+				try {
+					matches.call( div, "[test!='']:sizzle" );
+					rbuggyMatches.push( "!=", pseudos );
+				} catch ( e ) {}
+			});
+
+			// rbuggyMatches always contains :active and :focus, so no need for a length check
+			rbuggyMatches = /* rbuggyMatches.length && */ new RegExp( rbuggyMatches.join("|") );
+
+			Sizzle.matchesSelector = function( elem, expr ) {
+				// Make sure that attribute selectors are quoted
+				expr = expr.replace( rattributeQuotes, "='$1']" );
+
+				// rbuggyMatches always contains :active, so no need for an existence check
+				if ( !isXML( elem ) && !rbuggyMatches.test( expr ) && !rbuggyQSA.test( expr ) ) {
+					try {
+						var ret = matches.call( elem, expr );
+
+						// IE 9's matchesSelector returns false on disconnected nodes
+						if ( ret || disconnectedMatch ||
+								// As well, disconnected nodes are said to be in a document
+								// fragment in IE 9
+								elem.document && elem.document.nodeType !== 11 ) {
+							return ret;
+						}
+					} catch(e) {}
+				}
+
+				return Sizzle( expr, null, null, [ elem ] ).length > 0;
+			};
+		}
+	})();
+}
+
+// Deprecated
+Expr.pseudos["nth"] = Expr.pseudos["eq"];
+
+// Back-compat
+function setFilters() {}
+Expr.filters = setFilters.prototype = Expr.pseudos;
+Expr.setFilters = new setFilters();
+
+// Override sizzle attribute retrieval
+Sizzle.attr = jQuery.attr;
+jQuery.find = Sizzle;
+jQuery.expr = Sizzle.selectors;
+jQuery.expr[":"] = jQuery.expr.pseudos;
+jQuery.unique = Sizzle.uniqueSort;
+jQuery.text = Sizzle.getText;
+jQuery.isXMLDoc = Sizzle.isXML;
+jQuery.contains = Sizzle.contains;
+
+
+})( window );
+var runtil = /Until$/,
+	rparentsprev = /^(?:parents|prev(?:Until|All))/,
+	isSimple = /^.[^:#\[\.,]*$/,
+	rneedsContext = jQuery.expr.match.needsContext,
+	// methods guaranteed to produce a unique set when starting from a unique set
+	guaranteedUnique = {
+		children: true,
+		contents: true,
+		next: true,
+		prev: true
+	};
+
+jQuery.fn.extend({
+	find: function( selector ) {
+		var i, l, length, n, r, ret,
+			self = this;
+
+		if ( typeof selector !== "string" ) {
+			return jQuery( selector ).filter(function() {
+				for ( i = 0, l = self.length; i < l; i++ ) {
+					if ( jQuery.contains( self[ i ], this ) ) {
+						return true;
+					}
+				}
+			});
+		}
+
+		ret = this.pushStack( "", "find", selector );
+
+		for ( i = 0, l = this.length; i < l; i++ ) {
+			length = ret.length;
+			jQuery.find( selector, this[i], ret );
+
+			if ( i > 0 ) {
+				// Make sure that the results are unique
+				for ( n = length; n < ret.length; n++ ) {
+					for ( r = 0; r < length; r++ ) {
+						if ( ret[r] === ret[n] ) {
+							ret.splice(n--, 1);
+							break;
+						}
+					}
+				}
+			}
+		}
+
+		return ret;
+	},
+
+	has: function( target ) {
+		var i,
+			targets = jQuery( target, this ),
+			len = targets.length;
+
+		return this.filter(function() {
+			for ( i = 0; i < len; i++ ) {
+				if ( jQuery.contains( this, targets[i] ) ) {
+					return true;
+				}
+			}
+		});
+	},
+
+	not: function( selector ) {
+		return this.pushStack( winnow(this, selector, false), "not", selector);
+	},
+
+	filter: function( selector ) {
+		return this.pushStack( winnow(this, selector, true), "filter", selector );
+	},
+
+	is: function( selector ) {
+		return !!selector && (
+			typeof selector === "string" ?
+				// If this is a positional/relative selector, check membership in the returned set
+				// so $("p:first").is("p:last") won't return true for a doc with two "p".
+				rneedsContext.test( selector ) ?
+					jQuery( selector, this.context ).index( this[0] ) >= 0 :
+					jQuery.filter( selector, this ).length > 0 :
+				this.filter( selector ).length > 0 );
+	},
+
+	closest: function( selectors, context ) {
+		var cur,
+			i = 0,
+			l = this.length,
+			ret = [],
+			pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ?
+				jQuery( selectors, context || this.context ) :
+				0;
+
+		for ( ; i < l; i++ ) {
+			cur = this[i];
+
+			while ( cur && cur.ownerDocument && cur !== context && cur.nodeType !== 11 ) {
+				if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) {
+					ret.push( cur );
+					break;
+				}
+				cur = cur.parentNode;
+			}
+		}
+
+		ret = ret.length > 1 ? jQuery.unique( ret ) : ret;
+
+		return this.pushStack( ret, "closest", selectors );
+	},
+
+	// Determine the position of an element within
+	// the matched set of elements
+	index: function( elem ) {
+
+		// No argument, return index in parent
+		if ( !elem ) {
+			return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1;
+		}
+
+		// index in selector
+		if ( typeof elem === "string" ) {
+			return jQuery.inArray( this[0], jQuery( elem ) );
+		}
+
+		// Locate the position of the desired element
+		return jQuery.inArray(
+			// If it receives a jQuery object, the first element is used
+			elem.jquery ? elem[0] : elem, this );
+	},
+
+	add: function( selector, context ) {
+		var set = typeof selector === "string" ?
+				jQuery( selector, context ) :
+				jQuery.makeArray( selector && selector.nodeType ? [ selector ] : selector ),
+			all = jQuery.merge( this.get(), set );
+
+		return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ?
+			all :
+			jQuery.unique( all ) );
+	},
+
+	addBack: function( selector ) {
+		return this.add( selector == null ?
+			this.prevObject : this.prevObject.filter(selector)
+		);
+	}
+});
+
+jQuery.fn.andSelf = jQuery.fn.addBack;
+
+// A painfully simple check to see if an element is disconnected
+// from a document (should be improved, where feasible).
+function isDisconnected( node ) {
+	return !node || !node.parentNode || node.parentNode.nodeType === 11;
+}
+
+function sibling( cur, dir ) {
+	do {
+		cur = cur[ dir ];
+	} while ( cur && cur.nodeType !== 1 );
+
+	return cur;
+}
+
+jQuery.each({
+	parent: function( elem ) {
+		var parent = elem.parentNode;
+		return parent && parent.nodeType !== 11 ? parent : null;
+	},
+	parents: function( elem ) {
+		return jQuery.dir( elem, "parentNode" );
+	},
+	parentsUntil: function( elem, i, until ) {
+		return jQuery.dir( elem, "parentNode", until );
+	},
+	next: function( elem ) {
+		return sibling( elem, "nextSibling" );
+	},
+	prev: function( elem ) {
+		return sibling( elem, "previousSibling" );
+	},
+	nextAll: function( elem ) {
+		return jQuery.dir( elem, "nextSibling" );
+	},
+	prevAll: function( elem ) {
+		return jQuery.dir( elem, "previousSibling" );
+	},
+	nextUntil: function( elem, i, until ) {
+		return jQuery.dir( elem, "nextSibling", until );
+	},
+	prevUntil: function( elem, i, until ) {
+		return jQuery.dir( elem, "previousSibling", until );
+	},
+	siblings: function( elem ) {
+		return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem );
+	},
+	children: function( elem ) {
+		return jQuery.sibling( elem.firstChild );
+	},
+	contents: function( elem ) {
+		return jQuery.nodeName( elem, "iframe" ) ?
+			elem.contentDocument || elem.contentWindow.document :
+			jQuery.merge( [], elem.childNodes );
+	}
+}, function( name, fn ) {
+	jQuery.fn[ name ] = function( until, selector ) {
+		var ret = jQuery.map( this, fn, until );
+
+		if ( !runtil.test( name ) ) {
+			selector = until;
+		}
+
+		if ( selector && typeof selector === "string" ) {
+			ret = jQuery.filter( selector, ret );
+		}
+
+		ret = this.length > 1 && !guaranteedUnique[ name ] ? jQuery.unique( ret ) : ret;
+
+		if ( this.length > 1 && rparentsprev.test( name ) ) {
+			ret = ret.reverse();
+		}
+
+		return this.pushStack( ret, name, core_slice.call( arguments ).join(",") );
+	};
+});
+
+jQuery.extend({
+	filter: function( expr, elems, not ) {
+		if ( not ) {
+			expr = ":not(" + expr + ")";
+		}
+
+		return elems.length === 1 ?
+			jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] :
+			jQuery.find.matches(expr, elems);
+	},
+
+	dir: function( elem, dir, until ) {
+		var matched = [],
+			cur = elem[ dir ];
+
+		while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) {
+			if ( cur.nodeType === 1 ) {
+				matched.push( cur );
+			}
+			cur = cur[dir];
+		}
+		return matched;
+	},
+
+	sibling: function( n, elem ) {
+		var r = [];
+
+		for ( ; n; n = n.nextSibling ) {
+			if ( n.nodeType === 1 && n !== elem ) {
+				r.push( n );
+			}
+		}
+
+		return r;
+	}
+});
+
+// Implement the identical functionality for filter and not
+function winnow( elements, qualifier, keep ) {
+
+	// Can't pass null or undefined to indexOf in Firefox 4
+	// Set to 0 to skip string check
+	qualifier = qualifier || 0;
+
+	if ( jQuery.isFunction( qualifier ) ) {
+		return jQuery.grep(elements, function( elem, i ) {
+			var retVal = !!qualifier.call( elem, i, elem );
+			return retVal === keep;
+		});
+
+	} else if ( qualifier.nodeType ) {
+		return jQuery.grep(elements, function( elem, i ) {
+			return ( elem === qualifier ) === keep;
+		});
+
+	} else if ( typeof qualifier === "string" ) {
+		var filtered = jQuery.grep(elements, function( elem ) {
+			return elem.nodeType === 1;
+		});
+
+		if ( isSimple.test( qualifier ) ) {
+			return jQuery.filter(qualifier, filtered, !keep);
+		} else {
+			qualifier = jQuery.filter( qualifier, filtered );
+		}
+	}
+
+	return jQuery.grep(elements, function( elem, i ) {
+		return ( jQuery.inArray( elem, qualifier ) >= 0 ) === keep;
+	});
+}
+function createSafeFragment( document ) {
+	var list = nodeNames.split( "|" ),
+	safeFrag = document.createDocumentFragment();
+
+	if ( safeFrag.createElement ) {
+		while ( list.length ) {
+			safeFrag.createElement(
+				list.pop()
+			);
+		}
+	}
+	return safeFrag;
+}
+
+var nodeNames = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|" +
+		"header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
+	rinlinejQuery = / jQuery\d+="(?:null|\d+)"/g,
+	rleadingWhitespace = /^\s+/,
+	rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
+	rtagName = /<([\w:]+)/,
+	rtbody = /<tbody/i,
+	rhtml = /<|&#?\w+;/,
+	rnoInnerhtml = /<(?:script|style|link)/i,
+	rnocache = /<(?:script|object|embed|option|style)/i,
+	rnoshimcache = new RegExp("<(?:" + nodeNames + ")[\\s/>]", "i"),
+	rcheckableType = /^(?:checkbox|radio)$/,
+	// checked="checked" or checked
+	rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
+	rscriptType = /\/(java|ecma)script/i,
+	rcleanScript = /^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,
+	wrapMap = {
+		option: [ 1, "<select multiple='multiple'>", "</select>" ],
+		legend: [ 1, "<fieldset>", "</fieldset>" ],
+		thead: [ 1, "<table>", "</table>" ],
+		tr: [ 2, "<table><tbody>", "</tbody></table>" ],
+		td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
+		col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ],
+		area: [ 1, "<map>", "</map>" ],
+		_default: [ 0, "", "" ]
+	},
+	safeFragment = createSafeFragment( document ),
+	fragmentDiv = safeFragment.appendChild( document.createElement("div") );
+
+wrapMap.optgroup = wrapMap.option;
+wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+wrapMap.th = wrapMap.td;
+
+// IE6-8 can't serialize link, script, style, or any html5 (NoScope) tags,
+// unless wrapped in a div with non-breaking characters in front of it.
+if ( !jQuery.support.htmlSerialize ) {
+	wrapMap._default = [ 1, "X<div>", "</div>" ];
+}
+
+jQuery.fn.extend({
+	text: function( value ) {
+		return jQuery.access( this, function( value ) {
+			return value === undefined ?
+				jQuery.text( this ) :
+				this.empty().append( ( this[0] && this[0].ownerDocument || document ).createTextNode( value ) );
+		}, null, value, arguments.length );
+	},
+
+	wrapAll: function( html ) {
+		if ( jQuery.isFunction( html ) ) {
+			return this.each(function(i) {
+				jQuery(this).wrapAll( html.call(this, i) );
+			});
+		}
+
+		if ( this[0] ) {
+			// The elements to wrap the target around
+			var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true);
+
+			if ( this[0].parentNode ) {
+				wrap.insertBefore( this[0] );
+			}
+
+			wrap.map(function() {
+				var elem = this;
+
+				while ( elem.firstChild && elem.firstChild.nodeType === 1 ) {
+					elem = elem.firstChild;
+				}
+
+				return elem;
+			}).append( this );
+		}
+
+		return this;
+	},
+
+	wrapInner: function( html ) {
+		if ( jQuery.isFunction( html ) ) {
+			return this.each(function(i) {
+				jQuery(this).wrapInner( html.call(this, i) );
+			});
+		}
+
+		return this.each(function() {
+			var self = jQuery( this ),
+				contents = self.contents();
+
+			if ( contents.length ) {
+				contents.wrapAll( html );
+
+			} else {
+				self.append( html );
+			}
+		});
+	},
+
+	wrap: function( html ) {
+		var isFunction = jQuery.isFunction( html );
+
+		return this.each(function(i) {
+			jQuery( this ).wrapAll( isFunction ? html.call(this, i) : html );
+		});
+	},
+
+	unwrap: function() {
+		return this.parent().each(function() {
+			if ( !jQuery.nodeName( this, "body" ) ) {
+				jQuery( this ).replaceWith( this.childNodes );
+			}
+		}).end();
+	},
+
+	append: function() {
+		return this.domManip(arguments, true, function( elem ) {
+			if ( this.nodeType === 1 || this.nodeType === 11 ) {
+				this.appendChild( elem );
+			}
+		});
+	},
+
+	prepend: function() {
+		return this.domManip(arguments, true, function( elem ) {
+			if ( this.nodeType === 1 || this.nodeType === 11 ) {
+				this.insertBefore( elem, this.firstChild );
+			}
+		});
+	},
+
+	before: function() {
+		if ( !isDisconnected( this[0] ) ) {
+			return this.domManip(arguments, false, function( elem ) {
+				this.parentNode.insertBefore( elem, this );
+			});
+		}
+
+		if ( arguments.length ) {
+			var set = jQuery.clean( arguments );
+			return this.pushStack( jQuery.merge( set, this ), "before", this.selector );
+		}
+	},
+
+	after: function() {
+		if ( !isDisconnected( this[0] ) ) {
+			return this.domManip(arguments, false, function( elem ) {
+				this.parentNode.insertBefore( elem, this.nextSibling );
+			});
+		}
+
+		if ( arguments.length ) {
+			var set = jQuery.clean( arguments );
+			return this.pushStack( jQuery.merge( this, set ), "after", this.selector );
+		}
+	},
+
+	// keepData is for internal use only--do not document
+	remove: function( selector, keepData ) {
+		var elem,
+			i = 0;
+
+		for ( ; (elem = this[i]) != null; i++ ) {
+			if ( !selector || jQuery.filter( selector, [ elem ] ).length ) {
+				if ( !keepData && elem.nodeType === 1 ) {
+					jQuery.cleanData( elem.getElementsByTagName("*") );
+					jQuery.cleanData( [ elem ] );
+				}
+
+				if ( elem.parentNode ) {
+					elem.parentNode.removeChild( elem );
+				}
+			}
+		}
+
+		return this;
+	},
+
+	empty: function() {
+		var elem,
+			i = 0;
+
+		for ( ; (elem = this[i]) != null; i++ ) {
+			// Remove element nodes and prevent memory leaks
+			if ( elem.nodeType === 1 ) {
+				jQuery.cleanData( elem.getElementsByTagName("*") );
+			}
+
+			// Remove any remaining nodes
+			while ( elem.firstChild ) {
+				elem.removeChild( elem.firstChild );
+			}
+		}
+
+		return this;
+	},
+
+	clone: function( dataAndEvents, deepDataAndEvents ) {
+		dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
+		deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
+
+		return this.map( function () {
+			return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
+		});
+	},
+
+	html: function( value ) {
+		return jQuery.access( this, function( value ) {
+			var elem = this[0] || {},
+				i = 0,
+				l = this.length;
+
+			if ( value === undefined ) {
+				return elem.nodeType === 1 ?
+					elem.innerHTML.replace( rinlinejQuery, "" ) :
+					undefined;
+			}
+
+			// See if we can take a shortcut and just use innerHTML
+			if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
+				( jQuery.support.htmlSerialize || !rnoshimcache.test( value )  ) &&
+				( jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value ) ) &&
+				!wrapMap[ ( rtagName.exec( value ) || ["", ""] )[1].toLowerCase() ] ) {
+
+				value = value.replace( rxhtmlTag, "<$1></$2>" );
+
+				try {
+					for (; i < l; i++ ) {
+						// Remove element nodes and prevent memory leaks
+						elem = this[i] || {};
+						if ( elem.nodeType === 1 ) {
+							jQuery.cleanData( elem.getElementsByTagName( "*" ) );
+							elem.innerHTML = value;
+						}
+					}
+
+					elem = 0;
+
+				// If using innerHTML throws an exception, use the fallback method
+				} catch(e) {}
+			}
+
+			if ( elem ) {
+				this.empty().append( value );
+			}
+		}, null, value, arguments.length );
+	},
+
+	replaceWith: function( value ) {
+		if ( !isDisconnected( this[0] ) ) {
+			// Make sure that the elements are removed from the DOM before they are inserted
+			// this can help fix replacing a parent with child elements
+			if ( jQuery.isFunction( value ) ) {
+				return this.each(function(i) {
+					var self = jQuery(this), old = self.html();
+					self.replaceWith( value.call( this, i, old ) );
+				});
+			}
+
+			if ( typeof value !== "string" ) {
+				value = jQuery( value ).detach();
+			}
+
+			return this.each(function() {
+				var next = this.nextSibling,
+					parent = this.parentNode;
+
+				jQuery( this ).remove();
+
+				if ( next ) {
+					jQuery(next).before( value );
+				} else {
+					jQuery(parent).append( value );
+				}
+			});
+		}
+
+		return this.length ?
+			this.pushStack( jQuery(jQuery.isFunction(value) ? value() : value), "replaceWith", value ) :
+			this;
+	},
+
+	detach: function( selector ) {
+		return this.remove( selector, true );
+	},
+
+	domManip: function( args, table, callback ) {
+
+		// Flatten any nested arrays
+		args = [].concat.apply( [], args );
+
+		var results, first, fragment, iNoClone,
+			i = 0,
+			value = args[0],
+			scripts = [],
+			l = this.length;
+
+		// We can't cloneNode fragments that contain checked, in WebKit
+		if ( !jQuery.support.checkClone && l > 1 && typeof value === "string" && rchecked.test( value ) ) {
+			return this.each(function() {
+				jQuery(this).domManip( args, table, callback );
+			});
+		}
+
+		if ( jQuery.isFunction(value) ) {
+			return this.each(function(i) {
+				var self = jQuery(this);
+				args[0] = value.call( this, i, table ? self.html() : undefined );
+				self.domManip( args, table, callback );
+			});
+		}
+
+		if ( this[0] ) {
+			results = jQuery.buildFragment( args, this, scripts );
+			fragment = results.fragment;
+			first = fragment.firstChild;
+
+			if ( fragment.childNodes.length === 1 ) {
+				fragment = first;
+			}
+
+			if ( first ) {
+				table = table && jQuery.nodeName( first, "tr" );
+
+				// Use the original fragment for the last item instead of the first because it can end up
+				// being emptied incorrectly in certain situations (#8070).
+				// Fragments from the fragment cache must always be cloned and never used in place.
+				for ( iNoClone = results.cacheable || l - 1; i < l; i++ ) {
+					callback.call(
+						table && jQuery.nodeName( this[i], "table" ) ?
+							findOrAppend( this[i], "tbody" ) :
+							this[i],
+						i === iNoClone ?
+							fragment :
+							jQuery.clone( fragment, true, true )
+					);
+				}
+			}
+
+			// Fix #11809: Avoid leaking memory
+			fragment = first = null;
+
+			if ( scripts.length ) {
+				jQuery.each( scripts, function( i, elem ) {
+					if ( elem.src ) {
+						if ( jQuery.ajax ) {
+							jQuery.ajax({
+								url: elem.src,
+								type: "GET",
+								dataType: "script",
+								async: false,
+								global: false,
+								"throws": true
+							});
+						} else {
+							jQuery.error("no ajax");
+						}
+					} else {
+						jQuery.globalEval( ( elem.text || elem.textContent || elem.innerHTML || "" ).replace( rcleanScript, "" ) );
+					}
+
+					if ( elem.parentNode ) {
+						elem.parentNode.removeChild( elem );
+					}
+				});
+			}
+		}
+
+		return this;
+	}
+});
+
+function findOrAppend( elem, tag ) {
+	return elem.getElementsByTagName( tag )[0] || elem.appendChild( elem.ownerDocument.createElement( tag ) );
+}
+
+function cloneCopyEvent( src, dest ) {
+
+	if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) {
+		return;
+	}
+
+	var type, i, l,
+		oldData = jQuery._data( src ),
+		curData = jQuery._data( dest, oldData ),
+		events = oldData.events;
+
+	if ( events ) {
+		delete curData.handle;
+		curData.events = {};
+
+		for ( type in events ) {
+			for ( i = 0, l = events[ type ].length; i < l; i++ ) {
+				jQuery.event.add( dest, type, events[ type ][ i ] );
+			}
+		}
+	}
+
+	// make the cloned public data object a copy from the original
+	if ( curData.data ) {
+		curData.data = jQuery.extend( {}, curData.data );
+	}
+}
+
+function cloneFixAttributes( src, dest ) {
+	var nodeName;
+
+	// We do not need to do anything for non-Elements
+	if ( dest.nodeType !== 1 ) {
+		return;
+	}
+
+	// clearAttributes removes the attributes, which we don't want,
+	// but also removes the attachEvent events, which we *do* want
+	if ( dest.clearAttributes ) {
+		dest.clearAttributes();
+	}
+
+	// mergeAttributes, in contrast, only merges back on the
+	// original attributes, not the events
+	if ( dest.mergeAttributes ) {
+		dest.mergeAttributes( src );
+	}
+
+	nodeName = dest.nodeName.toLowerCase();
+
+	if ( nodeName === "object" ) {
+		// IE6-10 improperly clones children of object elements using classid.
+		// IE10 throws NoModificationAllowedError if parent is null, #12132.
+		if ( dest.parentNode ) {
+			dest.outerHTML = src.outerHTML;
+		}
+
+		// This path appears unavoidable for IE9. When cloning an object
+		// element in IE9, the outerHTML strategy above is not sufficient.
+		// If the src has innerHTML and the destination does not,
+		// copy the src.innerHTML into the dest.innerHTML. #10324
+		if ( jQuery.support.html5Clone && (src.innerHTML && !jQuery.trim(dest.innerHTML)) ) {
+			dest.innerHTML = src.innerHTML;
+		}
+
+	} else if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
+		// IE6-8 fails to persist the checked state of a cloned checkbox
+		// or radio button. Worse, IE6-7 fail to give the cloned element
+		// a checked appearance if the defaultChecked value isn't also set
+
+		dest.defaultChecked = dest.checked = src.checked;
+
+		// IE6-7 get confused and end up setting the value of a cloned
+		// checkbox/radio button to an empty string instead of "on"
+		if ( dest.value !== src.value ) {
+			dest.value = src.value;
+		}
+
+	// IE6-8 fails to return the selected option to the default selected
+	// state when cloning options
+	} else if ( nodeName === "option" ) {
+		dest.selected = src.defaultSelected;
+
+	// IE6-8 fails to set the defaultValue to the correct value when
+	// cloning other types of input fields
+	} else if ( nodeName === "input" || nodeName === "textarea" ) {
+		dest.defaultValue = src.defaultValue;
+
+	// IE blanks contents when cloning scripts
+	} else if ( nodeName === "script" && dest.text !== src.text ) {
+		dest.text = src.text;
+	}
+
+	// Event data gets referenced instead of copied if the expando
+	// gets copied too
+	dest.removeAttribute( jQuery.expando );
+}
+
+jQuery.buildFragment = function( args, context, scripts ) {
+	var fragment, cacheable, cachehit,
+		first = args[ 0 ];
+
+	// Set context from what may come in as undefined or a jQuery collection or a node
+	// Updated to fix #12266 where accessing context[0] could throw an exception in IE9/10 &
+	// also doubles as fix for #8950 where plain objects caused createDocumentFragment exception
+	context = context || document;
+	context = !context.nodeType && context[0] || context;
+	context = context.ownerDocument || context;
+
+	// Only cache "small" (1/2 KB) HTML strings that are associated with the main document
+	// Cloning options loses the selected state, so don't cache them
+	// IE 6 doesn't like it when you put <object> or <embed> elements in a fragment
+	// Also, WebKit does not clone 'checked' attributes on cloneNode, so don't cache
+	// Lastly, IE6,7,8 will not correctly reuse cached fragments that were created from unknown elems #10501
+	if ( args.length === 1 && typeof first === "string" && first.length < 512 && context === document &&
+		first.charAt(0) === "<" && !rnocache.test( first ) &&
+		(jQuery.support.checkClone || !rchecked.test( first )) &&
+		(jQuery.support.html5Clone || !rnoshimcache.test( first )) ) {
+
+		// Mark cacheable and look for a hit
+		cacheable = true;
+		fragment = jQuery.fragments[ first ];
+		cachehit = fragment !== undefined;
+	}
+
+	if ( !fragment ) {
+		fragment = context.createDocumentFragment();
+		jQuery.clean( args, context, fragment, scripts );
+
+		// Update the cache, but only store false
+		// unless this is a second parsing of the same content
+		if ( cacheable ) {
+			jQuery.fragments[ first ] = cachehit && fragment;
+		}
+	}
+
+	return { fragment: fragment, cacheable: cacheable };
+};
+
+jQuery.fragments = {};
+
+jQuery.each({
+	appendTo: "append",
+	prependTo: "prepend",
+	insertBefore: "before",
+	insertAfter: "after",
+	replaceAll: "replaceWith"
+}, function( name, original ) {
+	jQuery.fn[ name ] = function( selector ) {
+		var elems,
+			i = 0,
+			ret = [],
+			insert = jQuery( selector ),
+			l = insert.length,
+			parent = this.length === 1 && this[0].parentNode;
+
+		if ( (parent == null || parent && parent.nodeType === 11 && parent.childNodes.length === 1) && l === 1 ) {
+			insert[ original ]( this[0] );
+			return this;
+		} else {
+			for ( ; i < l; i++ ) {
+				elems = ( i > 0 ? this.clone(true) : this ).get();
+				jQuery( insert[i] )[ original ]( elems );
+				ret = ret.concat( elems );
+			}
+
+			return this.pushStack( ret, name, insert.selector );
+		}
+	};
+});
+
+function getAll( elem ) {
+	if ( typeof elem.getElementsByTagName !== "undefined" ) {
+		return elem.getElementsByTagName( "*" );
+
+	} else if ( typeof elem.querySelectorAll !== "undefined" ) {
+		return elem.querySelectorAll( "*" );
+
+	} else {
+		return [];
+	}
+}
+
+// Used in clean, fixes the defaultChecked property
+function fixDefaultChecked( elem ) {
+	if ( rcheckableType.test( elem.type ) ) {
+		elem.defaultChecked = elem.checked;
+	}
+}
+
+jQuery.extend({
+	clone: function( elem, dataAndEvents, deepDataAndEvents ) {
+		var srcElements,
+			destElements,
+			i,
+			clone;
+
+		if ( jQuery.support.html5Clone || jQuery.isXMLDoc(elem) || !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) {
+			clone = elem.cloneNode( true );
+
+		// IE<=8 does not properly clone detached, unknown element nodes
+		} else {
+			fragmentDiv.innerHTML = elem.outerHTML;
+			fragmentDiv.removeChild( clone = fragmentDiv.firstChild );
+		}
+
+		if ( (!jQuery.support.noCloneEvent || !jQuery.support.noCloneChecked) &&
+				(elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem) ) {
+			// IE copies events bound via attachEvent when using cloneNode.
+			// Calling detachEvent on the clone will also remove the events
+			// from the original. In order to get around this, we use some
+			// proprietary methods to clear the events. Thanks to MooTools
+			// guys for this hotness.
+
+			cloneFixAttributes( elem, clone );
+
+			// Using Sizzle here is crazy slow, so we use getElementsByTagName instead
+			srcElements = getAll( elem );
+			destElements = getAll( clone );
+
+			// Weird iteration because IE will replace the length property
+			// with an element if you are cloning the body and one of the
+			// elements on the page has a name or id of "length"
+			for ( i = 0; srcElements[i]; ++i ) {
+				// Ensure that the destination node is not null; Fixes #9587
+				if ( destElements[i] ) {
+					cloneFixAttributes( srcElements[i], destElements[i] );
+				}
+			}
+		}
+
+		// Copy the events from the original to the clone
+		if ( dataAndEvents ) {
+			cloneCopyEvent( elem, clone );
+
+			if ( deepDataAndEvents ) {
+				srcElements = getAll( elem );
+				destElements = getAll( clone );
+
+				for ( i = 0; srcElements[i]; ++i ) {
+					cloneCopyEvent( srcElements[i], destElements[i] );
+				}
+			}
+		}
+
+		srcElements = destElements = null;
+
+		// Return the cloned set
+		return clone;
+	},
+
+	clean: function( elems, context, fragment, scripts ) {
+		var i, j, elem, tag, wrap, depth, div, hasBody, tbody, len, handleScript, jsTags,
+			safe = context === document && safeFragment,
+			ret = [];
+
+		// Ensure that context is a document
+		if ( !context || typeof context.createDocumentFragment === "undefined" ) {
+			context = document;
+		}
+
+		// Use the already-created safe fragment if context permits
+		for ( i = 0; (elem = elems[i]) != null; i++ ) {
+			if ( typeof elem === "number" ) {
+				elem += "";
+			}
+
+			if ( !elem ) {
+				continue;
+			}
+
+			// Convert html string into DOM nodes
+			if ( typeof elem === "string" ) {
+				if ( !rhtml.test( elem ) ) {
+					elem = context.createTextNode( elem );
+				} else {
+					// Ensure a safe container in which to render the html
+					safe = safe || createSafeFragment( context );
+					div = context.createElement("div");
+					safe.appendChild( div );
+
+					// Fix "XHTML"-style tags in all browsers
+					elem = elem.replace(rxhtmlTag, "<$1></$2>");
+
+					// Go to html and back, then peel off extra wrappers
+					tag = ( rtagName.exec( elem ) || ["", ""] )[1].toLowerCase();
+					wrap = wrapMap[ tag ] || wrapMap._default;
+					depth = wrap[0];
+					div.innerHTML = wrap[1] + elem + wrap[2];
+
+					// Move to the right depth
+					while ( depth-- ) {
+						div = div.lastChild;
+					}
+
+					// Remove IE's autoinserted <tbody> from table fragments
+					if ( !jQuery.support.tbody ) {
+
+						// String was a <table>, *may* have spurious <tbody>
+						hasBody = rtbody.test(elem);
+							tbody = tag === "table" && !hasBody ?
+								div.firstChild && div.firstChild.childNodes :
+
+								// String was a bare <thead> or <tfoot>
+								wrap[1] === "<table>" && !hasBody ?
+									div.childNodes :
+									[];
+
+						for ( j = tbody.length - 1; j >= 0 ; --j ) {
+							if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) {
+								tbody[ j ].parentNode.removeChild( tbody[ j ] );
+							}
+						}
+					}
+
+					// IE completely kills leading whitespace when innerHTML is used
+					if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( elem ) ) {
+						div.insertBefore( context.createTextNode( rleadingWhitespace.exec(elem)[0] ), div.firstChild );
+					}
+
+					elem = div.childNodes;
+
+					// Take out of fragment container (we need a fresh div each time)
+					div.parentNode.removeChild( div );
+				}
+			}
+
+			if ( elem.nodeType ) {
+				ret.push( elem );
+			} else {
+				jQuery.merge( ret, elem );
+			}
+		}
+
+		// Fix #11356: Clear elements from safeFragment
+		if ( div ) {
+			elem = div = safe = null;
+		}
+
+		// Reset defaultChecked for any radios and checkboxes
+		// about to be appended to the DOM in IE 6/7 (#8060)
+		if ( !jQuery.support.appendChecked ) {
+			for ( i = 0; (elem = ret[i]) != null; i++ ) {
+				if ( jQuery.nodeName( elem, "input" ) ) {
+					fixDefaultChecked( elem );
+				} else if ( typeof elem.getElementsByTagName !== "undefined" ) {
+					jQuery.grep( elem.getElementsByTagName("input"), fixDefaultChecked );
+				}
+			}
+		}
+
+		// Append elements to a provided document fragment
+		if ( fragment ) {
+			// Special handling of each script element
+			handleScript = function( elem ) {
+				// Check if we consider it executable
+				if ( !elem.type || rscriptType.test( elem.type ) ) {
+					// Detach the script and store it in the scripts array (if provided) or the fragment
+					// Return truthy to indicate that it has been handled
+					return scripts ?
+						scripts.push( elem.parentNode ? elem.parentNode.removeChild( elem ) : elem ) :
+						fragment.appendChild( elem );
+				}
+			};
+
+			for ( i = 0; (elem = ret[i]) != null; i++ ) {
+				// Check if we're done after handling an executable script
+				if ( !( jQuery.nodeName( elem, "script" ) && handleScript( elem ) ) ) {
+					// Append to fragment and handle embedded scripts
+					fragment.appendChild( elem );
+					if ( typeof elem.getElementsByTagName !== "undefined" ) {
+						// handleScript alters the DOM, so use jQuery.merge to ensure snapshot iteration
+						jsTags = jQuery.grep( jQuery.merge( [], elem.getElementsByTagName("script") ), handleScript );
+
+						// Splice the scripts into ret after their former ancestor and advance our index beyond them
+						ret.splice.apply( ret, [i + 1, 0].concat( jsTags ) );
+						i += jsTags.length;
+					}
+				}
+			}
+		}
+
+		return ret;
+	},
+
+	cleanData: function( elems, /* internal */ acceptData ) {
+		var data, id, elem, type,
+			i = 0,
+			internalKey = jQuery.expando,
+			cache = jQuery.cache,
+			deleteExpando = jQuery.support.deleteExpando,
+			special = jQuery.event.special;
+
+		for ( ; (elem = elems[i]) != null; i++ ) {
+
+			if ( acceptData || jQuery.acceptData( elem ) ) {
+
+				id = elem[ internalKey ];
+				data = id && cache[ id ];
+
+				if ( data ) {
+					if ( data.events ) {
+						for ( type in data.events ) {
+							if ( special[ type ] ) {
+								jQuery.event.remove( elem, type );
+
+							// This is a shortcut to avoid jQuery.event.remove's overhead
+							} else {
+								jQuery.removeEvent( elem, type, data.handle );
+							}
+						}
+					}
+
+					// Remove cache only if it was not already removed by jQuery.event.remove
+					if ( cache[ id ] ) {
+
+						delete cache[ id ];
+
+						// IE does not allow us to delete expando properties from nodes,
+						// nor does it have a removeAttribute function on Document nodes;
+						// we must handle all of these cases
+						if ( deleteExpando ) {
+							delete elem[ internalKey ];
+
+						} else if ( elem.removeAttribute ) {
+							elem.removeAttribute( internalKey );
+
+						} else {
+							elem[ internalKey ] = null;
+						}
+
+						jQuery.deletedIds.push( id );
+					}
+				}
+			}
+		}
+	}
+});
+// Limit scope pollution from any deprecated API
+(function() {
+
+var matched, browser;
+
+// Use of jQuery.browser is frowned upon.
+// More details: http://api.jquery.com/jQuery.browser
+// jQuery.uaMatch maintained for back-compat
+jQuery.uaMatch = function( ua ) {
+	ua = ua.toLowerCase();
+
+	var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
+		/(webkit)[ \/]([\w.]+)/.exec( ua ) ||
+		/(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
+		/(msie) ([\w.]+)/.exec( ua ) ||
+		ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
+		[];
+
+	return {
+		browser: match[ 1 ] || "",
+		version: match[ 2 ] || "0"
+	};
+};
+
+matched = jQuery.uaMatch( navigator.userAgent );
+browser = {};
+
+if ( matched.browser ) {
+	browser[ matched.browser ] = true;
+	browser.version = matched.version;
+}
+
+// Chrome is Webkit, but Webkit is also Safari.
+if ( browser.chrome ) {
+	browser.webkit = true;
+} else if ( browser.webkit ) {
+	browser.safari = true;
+}
+
+jQuery.browser = browser;
+
+jQuery.sub = function() {
+	function jQuerySub( selector, context ) {
+		return new jQuerySub.fn.init( selector, context );
+	}
+	jQuery.extend( true, jQuerySub, this );
+	jQuerySub.superclass = this;
+	jQuerySub.fn = jQuerySub.prototype = this();
+	jQuerySub.fn.constructor = jQuerySub;
+	jQuerySub.sub = this.sub;
+	jQuerySub.fn.init = function init( selector, context ) {
+		if ( context && context instanceof jQuery && !(context instanceof jQuerySub) ) {
+			context = jQuerySub( context );
+		}
+
+		return jQuery.fn.init.call( this, selector, context, rootjQuerySub );
+	};
+	jQuerySub.fn.init.prototype = jQuerySub.fn;
+	var rootjQuerySub = jQuerySub(document);
+	return jQuerySub;
+};
+
+})();
+var curCSS, iframe, iframeDoc,
+	ralpha = /alpha\([^)]*\)/i,
+	ropacity = /opacity=([^)]*)/,
+	rposition = /^(top|right|bottom|left)$/,
+	// swappable if display is none or starts with table except "table", "table-cell", or "table-caption"
+	// see here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
+	rdisplayswap = /^(none|table(?!-c[ea]).+)/,
+	rmargin = /^margin/,
+	rnumsplit = new RegExp( "^(" + core_pnum + ")(.*)$", "i" ),
+	rnumnonpx = new RegExp( "^(" + core_pnum + ")(?!px)[a-z%]+$", "i" ),
+	rrelNum = new RegExp( "^([-+])=(" + core_pnum + ")", "i" ),
+	elemdisplay = { BODY: "block" },
+
+	cssShow = { position: "absolute", visibility: "hidden", display: "block" },
+	cssNormalTransform = {
+		letterSpacing: 0,
+		fontWeight: 400
+	},
+
+	cssExpand = [ "Top", "Right", "Bottom", "Left" ],
+	cssPrefixes = [ "Webkit", "O", "Moz", "ms" ],
+
+	eventsToggle = jQuery.fn.toggle;
+
+// return a css property mapped to a potentially vendor prefixed property
+function vendorPropName( style, name ) {
+
+	// shortcut for names that are not vendor prefixed
+	if ( name in style ) {
+		return name;
+	}
+
+	// check for vendor prefixed names
+	var capName = name.charAt(0).toUpperCase() + name.slice(1),
+		origName = name,
+		i = cssPrefixes.length;
+
+	while ( i-- ) {
+		name = cssPrefixes[ i ] + capName;
+		if ( name in style ) {
+			return name;
+		}
+	}
+
+	return origName;
+}
+
+function isHidden( elem, el ) {
+	elem = el || elem;
+	return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem );
+}
+
+function showHide( elements, show ) {
+	var elem, display,
+		values = [],
+		index = 0,
+		length = elements.length;
+
+	for ( ; index < length; index++ ) {
+		elem = elements[ index ];
+		if ( !elem.style ) {
+			continue;
+		}
+		values[ index ] = jQuery._data( elem, "olddisplay" );
+		if ( show ) {
+			// Reset the inline display of this element to learn if it is
+			// being hidden by cascaded rules or not
+			if ( !values[ index ] && elem.style.display === "none" ) {
+				elem.style.display = "";
+			}
+
+			// Set elements which have been overridden with display: none
+			// in a stylesheet to whatever the default browser style is
+			// for such an element
+			if ( elem.style.display === "" && isHidden( elem ) ) {
+				values[ index ] = jQuery._data( elem, "olddisplay", css_defaultDisplay(elem.nodeName) );
+			}
+		} else {
+			display = curCSS( elem, "display" );
+
+			if ( !values[ index ] && display !== "none" ) {
+				jQuery._data( elem, "olddisplay", display );
+			}
+		}
+	}
+
+	// Set the display of most of the elements in a second loop
+	// to avoid the constant reflow
+	for ( index = 0; index < length; index++ ) {
+		elem = elements[ index ];
+		if ( !elem.style ) {
+			continue;
+		}
+		if ( !show || elem.style.display === "none" || elem.style.display === "" ) {
+			elem.style.display = show ? values[ index ] || "" : "none";
+		}
+	}
+
+	return elements;
+}
+
+jQuery.fn.extend({
+	css: function( name, value ) {
+		return jQuery.access( this, function( elem, name, value ) {
+			return value !== undefined ?
+				jQuery.style( elem, name, value ) :
+				jQuery.css( elem, name );
+		}, name, value, arguments.length > 1 );
+	},
+	show: function() {
+		return showHide( this, true );
+	},
+	hide: function() {
+		return showHide( this );
+	},
+	toggle: function( state, fn2 ) {
+		var bool = typeof state === "boolean";
+
+		if ( jQuery.isFunction( state ) && jQuery.isFunction( fn2 ) ) {
+			return eventsToggle.apply( this, arguments );
+		}
+
+		return this.each(function() {
+			if ( bool ? state : isHidden( this ) ) {
+				jQuery( this ).show();
+			} else {
+				jQuery( this ).hide();
+			}
+		});
+	}
+});
+
+jQuery.extend({
+	// Add in style property hooks for overriding the default
+	// behavior of getting and setting a style property
+	cssHooks: {
+		opacity: {
+			get: function( elem, computed ) {
+				if ( computed ) {
+					// We should always get a number back from opacity
+					var ret = curCSS( elem, "opacity" );
+					return ret === "" ? "1" : ret;
+
+				}
+			}
+		}
+	},
+
+	// Exclude the following css properties to add px
+	cssNumber: {
+		"fillOpacity": true,
+		"fontWeight": true,
+		"lineHeight": true,
+		"opacity": true,
+		"orphans": true,
+		"widows": true,
+		"zIndex": true,
+		"zoom": true
+	},
+
+	// Add in properties whose names you wish to fix before
+	// setting or getting the value
+	cssProps: {
+		// normalize float css property
+		"float": jQuery.support.cssFloat ? "cssFloat" : "styleFloat"
+	},
+
+	// Get and set the style property on a DOM Node
+	style: function( elem, name, value, extra ) {
+		// Don't set styles on text and comment nodes
+		if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
+			return;
+		}
+
+		// Make sure that we're working with the right name
+		var ret, type, hooks,
+			origName = jQuery.camelCase( name ),
+			style = elem.style;
+
+		name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( style, origName ) );
+
+		// gets hook for the prefixed version
+		// followed by the unprefixed version
+		hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+		// Check if we're setting a value
+		if ( value !== undefined ) {
+			type = typeof value;
+
+			// convert relative number strings (+= or -=) to relative numbers. #7345
+			if ( type === "string" && (ret = rrelNum.exec( value )) ) {
+				value = ( ret[1] + 1 ) * ret[2] + parseFloat( jQuery.css( elem, name ) );
+				// Fixes bug #9237
+				type = "number";
+			}
+
+			// Make sure that NaN and null values aren't set. See: #7116
+			if ( value == null || type === "number" && isNaN( value ) ) {
+				return;
+			}
+
+			// If a number was passed in, add 'px' to the (except for certain CSS properties)
+			if ( type === "number" && !jQuery.cssNumber[ origName ] ) {
+				value += "px";
+			}
+
+			// If a hook was provided, use that value, otherwise just set the specified value
+			if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value, extra )) !== undefined ) {
+				// Wrapped to prevent IE from throwing errors when 'invalid' values are provided
+				// Fixes bug #5509
+				try {
+					style[ name ] = value;
+				} catch(e) {}
+			}
+
+		} else {
+			// If a hook was provided get the non-computed value from there
+			if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {
+				return ret;
+			}
+
+			// Otherwise just get the value from the style object
+			return style[ name ];
+		}
+	},
+
+	css: function( elem, name, numeric, extra ) {
+		var val, num, hooks,
+			origName = jQuery.camelCase( name );
+
+		// Make sure that we're working with the right name
+		name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( elem.style, origName ) );
+
+		// gets hook for the prefixed version
+		// followed by the unprefixed version
+		hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+		// If a hook was provided get the computed value from there
+		if ( hooks && "get" in hooks ) {
+			val = hooks.get( elem, true, extra );
+		}
+
+		// Otherwise, if a way to get the computed value exists, use that
+		if ( val === undefined ) {
+			val = curCSS( elem, name );
+		}
+
+		//convert "normal" to computed value
+		if ( val === "normal" && name in cssNormalTransform ) {
+			val = cssNormalTransform[ name ];
+		}
+
+		// Return, converting to number if forced or a qualifier was provided and val looks numeric
+		if ( numeric || extra !== undefined ) {
+			num = parseFloat( val );
+			return numeric || jQuery.isNumeric( num ) ? num || 0 : val;
+		}
+		return val;
+	},
+
+	// A method for quickly swapping in/out CSS properties to get correct calculations
+	swap: function( elem, options, callback ) {
+		var ret, name,
+			old = {};
+
+		// Remember the old values, and insert the new ones
+		for ( name in options ) {
+			old[ name ] = elem.style[ name ];
+			elem.style[ name ] = options[ name ];
+		}
+
+		ret = callback.call( elem );
+
+		// Revert the old values
+		for ( name in options ) {
+			elem.style[ name ] = old[ name ];
+		}
+
+		return ret;
+	}
+});
+
+// NOTE: To any future maintainer, we've window.getComputedStyle
+// because jsdom on node.js will break without it.
+if ( window.getComputedStyle ) {
+	curCSS = function( elem, name ) {
+		var ret, width, minWidth, maxWidth,
+			computed = window.getComputedStyle( elem, null ),
+			style = elem.style;
+
+		if ( computed ) {
+
+			// getPropertyValue is only needed for .css('filter') in IE9, see #12537
+			ret = computed.getPropertyValue( name ) || computed[ name ];
+
+			if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) {
+				ret = jQuery.style( elem, name );
+			}
+
+			// A tribute to the "awesome hack by Dean Edwards"
+			// Chrome < 17 and Safari 5.0 uses "computed value" instead of "used value" for margin-right
+			// Safari 5.1.7 (at least) returns percentage for a larger set of values, but width seems to be reliably pixels
+			// this is against the CSSOM draft spec: http://dev.w3.org/csswg/cssom/#resolved-values
+			if ( rnumnonpx.test( ret ) && rmargin.test( name ) ) {
+				width = style.width;
+				minWidth = style.minWidth;
+				maxWidth = style.maxWidth;
+
+				style.minWidth = style.maxWidth = style.width = ret;
+				ret = computed.width;
+
+				style.width = width;
+				style.minWidth = minWidth;
+				style.maxWidth = maxWidth;
+			}
+		}
+
+		return ret;
+	};
+} else if ( document.documentElement.currentStyle ) {
+	curCSS = function( elem, name ) {
+		var left, rsLeft,
+			ret = elem.currentStyle && elem.currentStyle[ name ],
+			style = elem.style;
+
+		// Avoid setting ret to empty string here
+		// so we don't default to auto
+		if ( ret == null && style && style[ name ] ) {
+			ret = style[ name ];
+		}
+
+		// From the awesome hack by Dean Edwards
+		// http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291
+
+		// If we're not dealing with a regular pixel number
+		// but a number that has a weird ending, we need to convert it to pixels
+		// but not position css attributes, as those are proportional to the parent element instead
+		// and we can't measure the parent instead because it might trigger a "stacking dolls" problem
+		if ( rnumnonpx.test( ret ) && !rposition.test( name ) ) {
+
+			// Remember the original values
+			left = style.left;
+			rsLeft = elem.runtimeStyle && elem.runtimeStyle.left;
+
+			// Put in the new values to get a computed value out
+			if ( rsLeft ) {
+				elem.runtimeStyle.left = elem.currentStyle.left;
+			}
+			style.left = name === "fontSize" ? "1em" : ret;
+			ret = style.pixelLeft + "px";
+
+			// Revert the changed values
+			style.left = left;
+			if ( rsLeft ) {
+				elem.runtimeStyle.left = rsLeft;
+			}
+		}
+
+		return ret === "" ? "auto" : ret;
+	};
+}
+
+function setPositiveNumber( elem, value, subtract ) {
+	var matches = rnumsplit.exec( value );
+	return matches ?
+			Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || "px" ) :
+			value;
+}
+
+function augmentWidthOrHeight( elem, name, extra, isBorderBox ) {
+	var i = extra === ( isBorderBox ? "border" : "content" ) ?
+		// If we already have the right measurement, avoid augmentation
+		4 :
+		// Otherwise initialize for horizontal or vertical properties
+		name === "width" ? 1 : 0,
+
+		val = 0;
+
+	for ( ; i < 4; i += 2 ) {
+		// both box models exclude margin, so add it if we want it
+		if ( extra === "margin" ) {
+			// we use jQuery.css instead of curCSS here
+			// because of the reliableMarginRight CSS hook!
+			val += jQuery.css( elem, extra + cssExpand[ i ], true );
+		}
+
+		// From this point on we use curCSS for maximum performance (relevant in animations)
+		if ( isBorderBox ) {
+			// border-box includes padding, so remove it if we want content
+			if ( extra === "content" ) {
+				val -= parseFloat( curCSS( elem, "padding" + cssExpand[ i ] ) ) || 0;
+			}
+
+			// at this point, extra isn't border nor margin, so remove border
+			if ( extra !== "margin" ) {
+				val -= parseFloat( curCSS( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0;
+			}
+		} else {
+			// at this point, extra isn't content, so add padding
+			val += parseFloat( curCSS( elem, "padding" + cssExpand[ i ] ) ) || 0;
+
+			// at this point, extra isn't content nor padding, so add border
+			if ( extra !== "padding" ) {
+				val += parseFloat( curCSS( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0;
+			}
+		}
+	}
+
+	return val;
+}
+
+function getWidthOrHeight( elem, name, extra ) {
+
+	// Start with offset property, which is equivalent to the border-box value
+	var val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
+		valueIsBorderBox = true,
+		isBorderBox = jQuery.support.boxSizing && jQuery.css( elem, "boxSizing" ) === "border-box";
+
+	// some non-html elements return undefined for offsetWidth, so check for null/undefined
+	// svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
+	// MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668
+	if ( val <= 0 || val == null ) {
+		// Fall back to computed then uncomputed css if necessary
+		val = curCSS( elem, name );
+		if ( val < 0 || val == null ) {
+			val = elem.style[ name ];
+		}
+
+		// Computed unit is not pixels. Stop here and return.
+		if ( rnumnonpx.test(val) ) {
+			return val;
+		}
+
+		// we need the check for style in case a browser which returns unreliable values
+		// for getComputedStyle silently falls back to the reliable elem.style
+		valueIsBorderBox = isBorderBox && ( jQuery.support.boxSizingReliable || val === elem.style[ name ] );
+
+		// Normalize "", auto, and prepare for extra
+		val = parseFloat( val ) || 0;
+	}
+
+	// use the active box-sizing model to add/subtract irrelevant styles
+	return ( val +
+		augmentWidthOrHeight(
+			elem,
+			name,
+			extra || ( isBorderBox ? "border" : "content" ),
+			valueIsBorderBox
+		)
+	) + "px";
+}
+
+
+// Try to determine the default display value of an element
+function css_defaultDisplay( nodeName ) {
+	if ( elemdisplay[ nodeName ] ) {
+		return elemdisplay[ nodeName ];
+	}
+
+	var elem = jQuery( "<" + nodeName + ">" ).appendTo( document.body ),
+		display = elem.css("display");
+	elem.remove();
+
+	// If the simple way fails,
+	// get element's real default display by attaching it to a temp iframe
+	if ( display === "none" || display === "" ) {
+		// Use the already-created iframe if possible
+		iframe = document.body.appendChild(
+			iframe || jQuery.extend( document.createElement("iframe"), {
+				frameBorder: 0,
+				width: 0,
+				height: 0
+			})
+		);
+
+		// Create a cacheable copy of the iframe document on first call.
+		// IE and Opera will allow us to reuse the iframeDoc without re-writing the fake HTML
+		// document to it; WebKit & Firefox won't allow reusing the iframe document.
+		if ( !iframeDoc || !iframe.createElement ) {
+			iframeDoc = ( iframe.contentWindow || iframe.contentDocument ).document;
+			iframeDoc.write("<!doctype html><html><body>");
+			iframeDoc.close();
+		}
+
+		elem = iframeDoc.body.appendChild( iframeDoc.createElement(nodeName) );
+
+		display = curCSS( elem, "display" );
+		document.body.removeChild( iframe );
+	}
+
+	// Store the correct default display
+	elemdisplay[ nodeName ] = display;
+
+	return display;
+}
+
+jQuery.each([ "height", "width" ], function( i, name ) {
+	jQuery.cssHooks[ name ] = {
+		get: function( elem, computed, extra ) {
+			if ( computed ) {
+				// certain elements can have dimension info if we invisibly show them
+				// however, it must have a current display style that would benefit from this
+				if ( elem.offsetWidth === 0 && rdisplayswap.test( curCSS( elem, "display" ) ) ) {
+					return jQuery.swap( elem, cssShow, function() {
+						return getWidthOrHeight( elem, name, extra );
+					});
+				} else {
+					return getWidthOrHeight( elem, name, extra );
+				}
+			}
+		},
+
+		set: function( elem, value, extra ) {
+			return setPositiveNumber( elem, value, extra ?
+				augmentWidthOrHeight(
+					elem,
+					name,
+					extra,
+					jQuery.support.boxSizing && jQuery.css( elem, "boxSizing" ) === "border-box"
+				) : 0
+			);
+		}
+	};
+});
+
+if ( !jQuery.support.opacity ) {
+	jQuery.cssHooks.opacity = {
+		get: function( elem, computed ) {
+			// IE uses filters for opacity
+			return ropacity.test( (computed && elem.currentStyle ? elem.currentStyle.filter : elem.style.filter) || "" ) ?
+				( 0.01 * parseFloat( RegExp.$1 ) ) + "" :
+				computed ? "1" : "";
+		},
+
+		set: function( elem, value ) {
+			var style = elem.style,
+				currentStyle = elem.currentStyle,
+				opacity = jQuery.isNumeric( value ) ? "alpha(opacity=" + value * 100 + ")" : "",
+				filter = currentStyle && currentStyle.filter || style.filter || "";
+
+			// IE has trouble with opacity if it does not have layout
+			// Force it by setting the zoom level
+			style.zoom = 1;
+
+			// if setting opacity to 1, and no other filters exist - attempt to remove filter attribute #6652
+			if ( value >= 1 && jQuery.trim( filter.replace( ralpha, "" ) ) === "" &&
+				style.removeAttribute ) {
+
+				// Setting style.filter to null, "" & " " still leave "filter:" in the cssText
+				// if "filter:" is present at all, clearType is disabled, we want to avoid this
+				// style.removeAttribute is IE Only, but so apparently is this code path...
+				style.removeAttribute( "filter" );
+
+				// if there there is no filter style applied in a css rule, we are done
+				if ( currentStyle && !currentStyle.filter ) {
+					return;
+				}
+			}
+
+			// otherwise, set new filter values
+			style.filter = ralpha.test( filter ) ?
+				filter.replace( ralpha, opacity ) :
+				filter + " " + opacity;
+		}
+	};
+}
+
+// These hooks cannot be added until DOM ready because the support test
+// for it is not run until after DOM ready
+jQuery(function() {
+	if ( !jQuery.support.reliableMarginRight ) {
+		jQuery.cssHooks.marginRight = {
+			get: function( elem, computed ) {
+				// WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
+				// Work around by temporarily setting element display to inline-block
+				return jQuery.swap( elem, { "display": "inline-block" }, function() {
+					if ( computed ) {
+						return curCSS( elem, "marginRight" );
+					}
+				});
+			}
+		};
+	}
+
+	// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
+	// getComputedStyle returns percent when specified for top/left/bottom/right
+	// rather than make the css module depend on the offset module, we just check for it here
+	if ( !jQuery.support.pixelPosition && jQuery.fn.position ) {
+		jQuery.each( [ "top", "left" ], function( i, prop ) {
+			jQuery.cssHooks[ prop ] = {
+				get: function( elem, computed ) {
+					if ( computed ) {
+						var ret = curCSS( elem, prop );
+						// if curCSS returns percentage, fallback to offset
+						return rnumnonpx.test( ret ) ? jQuery( elem ).position()[ prop ] + "px" : ret;
+					}
+				}
+			};
+		});
+	}
+
+});
+
+if ( jQuery.expr && jQuery.expr.filters ) {
+	jQuery.expr.filters.hidden = function( elem ) {
+		return ( elem.offsetWidth === 0 && elem.offsetHeight === 0 ) || (!jQuery.support.reliableHiddenOffsets && ((elem.style && elem.style.display) || curCSS( elem, "display" )) === "none");
+	};
+
+	jQuery.expr.filters.visible = function( elem ) {
+		return !jQuery.expr.filters.hidden( elem );
+	};
+}
+
+// These hooks are used by animate to expand properties
+jQuery.each({
+	margin: "",
+	padding: "",
+	border: "Width"
+}, function( prefix, suffix ) {
+	jQuery.cssHooks[ prefix + suffix ] = {
+		expand: function( value ) {
+			var i,
+
+				// assumes a single number if not a string
+				parts = typeof value === "string" ? value.split(" ") : [ value ],
+				expanded = {};
+
+			for ( i = 0; i < 4; i++ ) {
+				expanded[ prefix + cssExpand[ i ] + suffix ] =
+					parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
+			}
+
+			return expanded;
+		}
+	};
+
+	if ( !rmargin.test( prefix ) ) {
+		jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
+	}
+});
+var r20 = /%20/g,
+	rbracket = /\[\]$/,
+	rCRLF = /\r?\n/g,
+	rinput = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
+	rselectTextarea = /^(?:select|textarea)/i;
+
+jQuery.fn.extend({
+	serialize: function() {
+		return jQuery.param( this.serializeArray() );
+	},
+	serializeArray: function() {
+		return this.map(function(){
+			return this.elements ? jQuery.makeArray( this.elements ) : this;
+		})
+		.filter(function(){
+			return this.name && !this.disabled &&
+				( this.checked || rselectTextarea.test( this.nodeName ) ||
+					rinput.test( this.type ) );
+		})
+		.map(function( i, elem ){
+			var val = jQuery( this ).val();
+
+			return val == null ?
+				null :
+				jQuery.isArray( val ) ?
+					jQuery.map( val, function( val, i ){
+						return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+					}) :
+					{ name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+		}).get();
+	}
+});
+
+//Serialize an array of form elements or a set of
+//key/values into a query string
+jQuery.param = function( a, traditional ) {
+	var prefix,
+		s = [],
+		add = function( key, value ) {
+			// If value is a function, invoke it and return its value
+			value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value );
+			s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
+		};
+
+	// Set traditional to true for jQuery <= 1.3.2 behavior.
+	if ( traditional === undefined ) {
+		traditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;
+	}
+
+	// If an array was passed in, assume that it is an array of form elements.
+	if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
+		// Serialize the form elements
+		jQuery.each( a, function() {
+			add( this.name, this.value );
+		});
+
+	} else {
+		// If traditional, encode the "old" way (the way 1.3.2 or older
+		// did it), otherwise encode params recursively.
+		for ( prefix in a ) {
+			buildParams( prefix, a[ prefix ], traditional, add );
+		}
+	}
+
+	// Return the resulting serialization
+	return s.join( "&" ).replace( r20, "+" );
+};
+
+function buildParams( prefix, obj, traditional, add ) {
+	var name;
+
+	if ( jQuery.isArray( obj ) ) {
+		// Serialize array item.
+		jQuery.each( obj, function( i, v ) {
+			if ( traditional || rbracket.test( prefix ) ) {
+				// Treat each array item as a scalar.
+				add( prefix, v );
+
+			} else {
+				// If array item is non-scalar (array or object), encode its
+				// numeric index to resolve deserialization ambiguity issues.
+				// Note that rack (as of 1.0.0) can't currently deserialize
+				// nested arrays properly, and attempting to do so may cause
+				// a server error. Possible fixes are to modify rack's
+				// deserialization algorithm or to provide an option or flag
+				// to force array serialization to be shallow.
+				buildParams( prefix + "[" + ( typeof v === "object" ? i : "" ) + "]", v, traditional, add );
+			}
+		});
+
+	} else if ( !traditional && jQuery.type( obj ) === "object" ) {
+		// Serialize object item.
+		for ( name in obj ) {
+			buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
+		}
+
+	} else {
+		// Serialize scalar item.
+		add( prefix, obj );
+	}
+}
+var
+	// Document location
+	ajaxLocParts,
+	ajaxLocation,
+
+	rhash = /#.*$/,
+	rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL
+	// #7653, #8125, #8152: local protocol detection
+	rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
+	rnoContent = /^(?:GET|HEAD)$/,
+	rprotocol = /^\/\//,
+	rquery = /\?/,
+	rscript = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
+	rts = /([?&])_=[^&]*/,
+	rurl = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,
+
+	// Keep a copy of the old load method
+	_load = jQuery.fn.load,
+
+	/* Prefilters
+	 * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
+	 * 2) These are called:
+	 *    - BEFORE asking for a transport
+	 *    - AFTER param serialization (s.data is a string if s.processData is true)
+	 * 3) key is the dataType
+	 * 4) the catchall symbol "*" can be used
+	 * 5) execution will start with transport dataType and THEN continue down to "*" if needed
+	 */
+	prefilters = {},
+
+	/* Transports bindings
+	 * 1) key is the dataType
+	 * 2) the catchall symbol "*" can be used
+	 * 3) selection will start with transport dataType and THEN go to "*" if needed
+	 */
+	transports = {},
+
+	// Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
+	allTypes = ["*/"] + ["*"];
+
+// #8138, IE may throw an exception when accessing
+// a field from window.location if document.domain has been set
+try {
+	ajaxLocation = location.href;
+} catch( e ) {
+	// Use the href attribute of an A element
+	// since IE will modify it given document.location
+	ajaxLocation = document.createElement( "a" );
+	ajaxLocation.href = "";
+	ajaxLocation = ajaxLocation.href;
+}
+
+// Segment location into parts
+ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];
+
+// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
+function addToPrefiltersOrTransports( structure ) {
+
+	// dataTypeExpression is optional and defaults to "*"
+	return function( dataTypeExpression, func ) {
+
+		if ( typeof dataTypeExpression !== "string" ) {
+			func = dataTypeExpression;
+			dataTypeExpression = "*";
+		}
+
+		var dataType, list, placeBefore,
+			dataTypes = dataTypeExpression.toLowerCase().split( core_rspace ),
+			i = 0,
+			length = dataTypes.length;
+
+		if ( jQuery.isFunction( func ) ) {
+			// For each dataType in the dataTypeExpression
+			for ( ; i < length; i++ ) {
+				dataType = dataTypes[ i ];
+				// We control if we're asked to add before
+				// any existing element
+				placeBefore = /^\+/.test( dataType );
+				if ( placeBefore ) {
+					dataType = dataType.substr( 1 ) || "*";
+				}
+				list = structure[ dataType ] = structure[ dataType ] || [];
+				// then we add to the structure accordingly
+				list[ placeBefore ? "unshift" : "push" ]( func );
+			}
+		}
+	};
+}
+
+// Base inspection function for prefilters and transports
+function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR,
+		dataType /* internal */, inspected /* internal */ ) {
+
+	dataType = dataType || options.dataTypes[ 0 ];
+	inspected = inspected || {};
+
+	inspected[ dataType ] = true;
+
+	var selection,
+		list = structure[ dataType ],
+		i = 0,
+		length = list ? list.length : 0,
+		executeOnly = ( structure === prefilters );
+
+	for ( ; i < length && ( executeOnly || !selection ); i++ ) {
+		selection = list[ i ]( options, originalOptions, jqXHR );
+		// If we got redirected to another dataType
+		// we try there if executing only and not done already
+		if ( typeof selection === "string" ) {
+			if ( !executeOnly || inspected[ selection ] ) {
+				selection = undefined;
+			} else {
+				options.dataTypes.unshift( selection );
+				selection = inspectPrefiltersOrTransports(
+						structure, options, originalOptions, jqXHR, selection, inspected );
+			}
+		}
+	}
+	// If we're only executing or nothing was selected
+	// we try the catchall dataType if not done already
+	if ( ( executeOnly || !selection ) && !inspected[ "*" ] ) {
+		selection = inspectPrefiltersOrTransports(
+				structure, options, originalOptions, jqXHR, "*", inspected );
+	}
+	// unnecessary when only executing (prefilters)
+	// but it'll be ignored by the caller in that case
+	return selection;
+}
+
+// A special extend for ajax options
+// that takes "flat" options (not to be deep extended)
+// Fixes #9887
+function ajaxExtend( target, src ) {
+	var key, deep,
+		flatOptions = jQuery.ajaxSettings.flatOptions || {};
+	for ( key in src ) {
+		if ( src[ key ] !== undefined ) {
+			( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];
+		}
+	}
+	if ( deep ) {
+		jQuery.extend( true, target, deep );
+	}
+}
+
+jQuery.fn.load = function( url, params, callback ) {
+	if ( typeof url !== "string" && _load ) {
+		return _load.apply( this, arguments );
+	}
+
+	// Don't do a request if no elements are being requested
+	if ( !this.length ) {
+		return this;
+	}
+
+	var selector, type, response,
+		self = this,
+		off = url.indexOf(" ");
+
+	if ( off >= 0 ) {
+		selector = url.slice( off, url.length );
+		url = url.slice( 0, off );
+	}
+
+	// If it's a function
+	if ( jQuery.isFunction( params ) ) {
+
+		// We assume that it's the callback
+		callback = params;
+		params = undefined;
+
+	// Otherwise, build a param string
+	} else if ( params && typeof params === "object" ) {
+		type = "POST";
+	}
+
+	// Request the remote document
+	jQuery.ajax({
+		url: url,
+
+		// if "type" variable is undefined, then "GET" method will be used
+		type: type,
+		dataType: "html",
+		data: params,
+		complete: function( jqXHR, status ) {
+			if ( callback ) {
+				self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] );
+			}
+		}
+	}).done(function( responseText ) {
+
+		// Save response for use in complete callback
+		response = arguments;
+
+		// See if a selector was specified
+		self.html( selector ?
+
+			// Create a dummy div to hold the results
+			jQuery("<div>")
+
+				// inject the contents of the document in, removing the scripts
+				// to avoid any 'Permission Denied' errors in IE
+				.append( responseText.replace( rscript, "" ) )
+
+				// Locate the specified elements
+				.find( selector ) :
+
+			// If not, just inject the full result
+			responseText );
+
+	});
+
+	return this;
+};
+
+// Attach a bunch of functions for handling common AJAX events
+jQuery.each( "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split( " " ), function( i, o ){
+	jQuery.fn[ o ] = function( f ){
+		return this.on( o, f );
+	};
+});
+
+jQuery.each( [ "get", "post" ], function( i, method ) {
+	jQuery[ method ] = function( url, data, callback, type ) {
+		// shift arguments if data argument was omitted
+		if ( jQuery.isFunction( data ) ) {
+			type = type || callback;
+			callback = data;
+			data = undefined;
+		}
+
+		return jQuery.ajax({
+			type: method,
+			url: url,
+			data: data,
+			success: callback,
+			dataType: type
+		});
+	};
+});
+
+jQuery.extend({
+
+	getScript: function( url, callback ) {
+		return jQuery.get( url, undefined, callback, "script" );
+	},
+
+	getJSON: function( url, data, callback ) {
+		return jQuery.get( url, data, callback, "json" );
+	},
+
+	// Creates a full fledged settings object into target
+	// with both ajaxSettings and settings fields.
+	// If target is omitted, writes into ajaxSettings.
+	ajaxSetup: function( target, settings ) {
+		if ( settings ) {
+			// Building a settings object
+			ajaxExtend( target, jQuery.ajaxSettings );
+		} else {
+			// Extending ajaxSettings
+			settings = target;
+			target = jQuery.ajaxSettings;
+		}
+		ajaxExtend( target, settings );
+		return target;
+	},
+
+	ajaxSettings: {
+		url: ajaxLocation,
+		isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
+		global: true,
+		type: "GET",
+		contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+		processData: true,
+		async: true,
+		/*
+		timeout: 0,
+		data: null,
+		dataType: null,
+		username: null,
+		password: null,
+		cache: null,
+		throws: false,
+		traditional: false,
+		headers: {},
+		*/
+
+		accepts: {
+			xml: "application/xml, text/xml",
+			html: "text/html",
+			text: "text/plain",
+			json: "application/json, text/javascript",
+			"*": allTypes
+		},
+
+		contents: {
+			xml: /xml/,
+			html: /html/,
+			json: /json/
+		},
+
+		responseFields: {
+			xml: "responseXML",
+			text: "responseText"
+		},
+
+		// List of data converters
+		// 1) key format is "source_type destination_type" (a single space in-between)
+		// 2) the catchall symbol "*" can be used for source_type
+		converters: {
+
+			// Convert anything to text
+			"* text": window.String,
+
+			// Text to html (true = no transformation)
+			"text html": true,
+
+			// Evaluate text as a json expression
+			"text json": jQuery.parseJSON,
+
+			// Parse text as xml
+			"text xml": jQuery.parseXML
+		},
+
+		// For options that shouldn't be deep extended:
+		// you can add your own custom options here if
+		// and when you create one that shouldn't be
+		// deep extended (see ajaxExtend)
+		flatOptions: {
+			context: true,
+			url: true
+		}
+	},
+
+	ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
+	ajaxTransport: addToPrefiltersOrTransports( transports ),
+
+	// Main method
+	ajax: function( url, options ) {
+
+		// If url is an object, simulate pre-1.5 signature
+		if ( typeof url === "object" ) {
+			options = url;
+			url = undefined;
+		}
+
+		// Force options to be an object
+		options = options || {};
+
+		var // ifModified key
+			ifModifiedKey,
+			// Response headers
+			responseHeadersString,
+			responseHeaders,
+			// transport
+			transport,
+			// timeout handle
+			timeoutTimer,
+			// Cross-domain detection vars
+			parts,
+			// To know if global events are to be dispatched
+			fireGlobals,
+			// Loop variable
+			i,
+			// Create the final options object
+			s = jQuery.ajaxSetup( {}, options ),
+			// Callbacks context
+			callbackContext = s.context || s,
+			// Context for global events
+			// It's the callbackContext if one was provided in the options
+			// and if it's a DOM node or a jQuery collection
+			globalEventContext = callbackContext !== s &&
+				( callbackContext.nodeType || callbackContext instanceof jQuery ) ?
+						jQuery( callbackContext ) : jQuery.event,
+			// Deferreds
+			deferred = jQuery.Deferred(),
+			completeDeferred = jQuery.Callbacks( "once memory" ),
+			// Status-dependent callbacks
+			statusCode = s.statusCode || {},
+			// Headers (they are sent all at once)
+			requestHeaders = {},
+			requestHeadersNames = {},
+			// The jqXHR state
+			state = 0,
+			// Default abort message
+			strAbort = "canceled",
+			// Fake xhr
+			jqXHR = {
+
+				readyState: 0,
+
+				// Caches the header
+				setRequestHeader: function( name, value ) {
+					if ( !state ) {
+						var lname = name.toLowerCase();
+						name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;
+						requestHeaders[ name ] = value;
+					}
+					return this;
+				},
+
+				// Raw string
+				getAllResponseHeaders: function() {
+					return state === 2 ? responseHeadersString : null;
+				},
+
+				// Builds headers hashtable if needed
+				getResponseHeader: function( key ) {
+					var match;
+					if ( state === 2 ) {
+						if ( !responseHeaders ) {
+							responseHeaders = {};
+							while( ( match = rheaders.exec( responseHeadersString ) ) ) {
+								responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
+							}
+						}
+						match = responseHeaders[ key.toLowerCase() ];
+					}
+					return match === undefined ? null : match;
+				},
+
+				// Overrides response content-type header
+				overrideMimeType: function( type ) {
+					if ( !state ) {
+						s.mimeType = type;
+					}
+					return this;
+				},
+
+				// Cancel the request
+				abort: function( statusText ) {
+					statusText = statusText || strAbort;
+					if ( transport ) {
+						transport.abort( statusText );
+					}
+					done( 0, statusText );
+					return this;
+				}
+			};
+
+		// Callback for when everything is done
+		// It is defined here because jslint complains if it is declared
+		// at the end of the function (which would be more logical and readable)
+		function done( status, nativeStatusText, responses, headers ) {
+			var isSuccess, success, error, response, modified,
+				statusText = nativeStatusText;
+
+			// Called once
+			if ( state === 2 ) {
+				return;
+			}
+
+			// State is "done" now
+			state = 2;
+
+			// Clear timeout if it exists
+			if ( timeoutTimer ) {
+				clearTimeout( timeoutTimer );
+			}
+
+			// Dereference transport for early garbage collection
+			// (no matter how long the jqXHR object will be used)
+			transport = undefined;
+
+			// Cache response headers
+			responseHeadersString = headers || "";
+
+			// Set readyState
+			jqXHR.readyState = status > 0 ? 4 : 0;
+
+			// Get response data
+			if ( responses ) {
+				response = ajaxHandleResponses( s, jqXHR, responses );
+			}
+
+			// If successful, handle type chaining
+			if ( status >= 200 && status < 300 || status === 304 ) {
+
+				// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+				if ( s.ifModified ) {
+
+					modified = jqXHR.getResponseHeader("Last-Modified");
+					if ( modified ) {
+						jQuery.lastModified[ ifModifiedKey ] = modified;
+					}
+					modified = jqXHR.getResponseHeader("Etag");
+					if ( modified ) {
+						jQuery.etag[ ifModifiedKey ] = modified;
+					}
+				}
+
+				// If not modified
+				if ( status === 304 ) {
+
+					statusText = "notmodified";
+					isSuccess = true;
+
+				// If we have data
+				} else {
+
+					isSuccess = ajaxConvert( s, response );
+					statusText = isSuccess.state;
+					success = isSuccess.data;
+					error = isSuccess.error;
+					isSuccess = !error;
+				}
+			} else {
+				// We extract error from statusText
+				// then normalize statusText and status for non-aborts
+				error = statusText;
+				if ( !statusText || status ) {
+					statusText = "error";
+					if ( status < 0 ) {
+						status = 0;
+					}
+				}
+			}
+
+			// Set data for the fake xhr object
+			jqXHR.status = status;
+			jqXHR.statusText = ( nativeStatusText || statusText ) + "";
+
+			// Success/Error
+			if ( isSuccess ) {
+				deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
+			} else {
+				deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
+			}
+
+			// Status-dependent callbacks
+			jqXHR.statusCode( statusCode );
+			statusCode = undefined;
+
+			if ( fireGlobals ) {
+				globalEventContext.trigger( "ajax" + ( isSuccess ? "Success" : "Error" ),
+						[ jqXHR, s, isSuccess ? success : error ] );
+			}
+
+			// Complete
+			completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
+
+			if ( fireGlobals ) {
+				globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
+				// Handle the global AJAX counter
+				if ( !( --jQuery.active ) ) {
+					jQuery.event.trigger( "ajaxStop" );
+				}
+			}
+		}
+
+		// Attach deferreds
+		deferred.promise( jqXHR );
+		jqXHR.success = jqXHR.done;
+		jqXHR.error = jqXHR.fail;
+		jqXHR.complete = completeDeferred.add;
+
+		// Status-dependent callbacks
+		jqXHR.statusCode = function( map ) {
+			if ( map ) {
+				var tmp;
+				if ( state < 2 ) {
+					for ( tmp in map ) {
+						statusCode[ tmp ] = [ statusCode[tmp], map[tmp] ];
+					}
+				} else {
+					tmp = map[ jqXHR.status ];
+					jqXHR.always( tmp );
+				}
+			}
+			return this;
+		};
+
+		// Remove hash character (#7531: and string promotion)
+		// Add protocol if not provided (#5866: IE7 issue with protocol-less urls)
+		// We also use the url parameter if available
+		s.url = ( ( url || s.url ) + "" ).replace( rhash, "" ).replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
+
+		// Extract dataTypes list
+		s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().split( core_rspace );
+
+		// A cross-domain request is in order when we have a protocol:host:port mismatch
+		if ( s.crossDomain == null ) {
+			parts = rurl.exec( s.url.toLowerCase() );
+			s.crossDomain = !!( parts &&
+				( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||
+					( parts[ 3 ] || ( parts[ 1 ] === "http:" ? 80 : 443 ) ) !=
+						( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? 80 : 443 ) ) )
+			);
+		}
+
+		// Convert data if not already a string
+		if ( s.data && s.processData && typeof s.data !== "string" ) {
+			s.data = jQuery.param( s.data, s.traditional );
+		}
+
+		// Apply prefilters
+		inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
+
+		// If request was aborted inside a prefilter, stop there
+		if ( state === 2 ) {
+			return jqXHR;
+		}
+
+		// We can fire global events as of now if asked to
+		fireGlobals = s.global;
+
+		// Uppercase the type
+		s.type = s.type.toUpperCase();
+
+		// Determine if request has content
+		s.hasContent = !rnoContent.test( s.type );
+
+		// Watch for a new set of requests
+		if ( fireGlobals && jQuery.active++ === 0 ) {
+			jQuery.event.trigger( "ajaxStart" );
+		}
+
+		// More options handling for requests with no content
+		if ( !s.hasContent ) {
+
+			// If data is available, append data to url
+			if ( s.data ) {
+				s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.data;
+				// #9682: remove data so that it's not used in an eventual retry
+				delete s.data;
+			}
+
+			// Get ifModifiedKey before adding the anti-cache parameter
+			ifModifiedKey = s.url;
+
+			// Add anti-cache in url if needed
+			if ( s.cache === false ) {
+
+				var ts = jQuery.now(),
+					// try replacing _= if it is there
+					ret = s.url.replace( rts, "$1_=" + ts );
+
+				// if nothing was replaced, add timestamp to the end
+				s.url = ret + ( ( ret === s.url ) ? ( rquery.test( s.url ) ? "&" : "?" ) + "_=" + ts : "" );
+			}
+		}
+
+		// Set the correct header, if data is being sent
+		if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
+			jqXHR.setRequestHeader( "Content-Type", s.contentType );
+		}
+
+		// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+		if ( s.ifModified ) {
+			ifModifiedKey = ifModifiedKey || s.url;
+			if ( jQuery.lastModified[ ifModifiedKey ] ) {
+				jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ ifModifiedKey ] );
+			}
+			if ( jQuery.etag[ ifModifiedKey ] ) {
+				jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ ifModifiedKey ] );
+			}
+		}
+
+		// Set the Accepts header for the server, depending on the dataType
+		jqXHR.setRequestHeader(
+			"Accept",
+			s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
+				s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
+				s.accepts[ "*" ]
+		);
+
+		// Check for headers option
+		for ( i in s.headers ) {
+			jqXHR.setRequestHeader( i, s.headers[ i ] );
+		}
+
+		// Allow custom headers/mimetypes and early abort
+		if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
+				// Abort if not done already and return
+				return jqXHR.abort();
+
+		}
+
+		// aborting is no longer a cancellation
+		strAbort = "abort";
+
+		// Install callbacks on deferreds
+		for ( i in { success: 1, error: 1, complete: 1 } ) {
+			jqXHR[ i ]( s[ i ] );
+		}
+
+		// Get transport
+		transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
+
+		// If no transport, we auto-abort
+		if ( !transport ) {
+			done( -1, "No Transport" );
+		} else {
+			jqXHR.readyState = 1;
+			// Send global event
+			if ( fireGlobals ) {
+				globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
+			}
+			// Timeout
+			if ( s.async && s.timeout > 0 ) {
+				timeoutTimer = setTimeout( function(){
+					jqXHR.abort( "timeout" );
+				}, s.timeout );
+			}
+
+			try {
+				state = 1;
+				transport.send( requestHeaders, done );
+			} catch (e) {
+				// Propagate exception as error if not done
+				if ( state < 2 ) {
+					done( -1, e );
+				// Simply rethrow otherwise
+				} else {
+					throw e;
+				}
+			}
+		}
+
+		return jqXHR;
+	},
+
+	// Counter for holding the number of active queries
+	active: 0,
+
+	// Last-Modified header cache for next request
+	lastModified: {},
+	etag: {}
+
+});
+
+/* Handles responses to an ajax request:
+ * - sets all responseXXX fields accordingly
+ * - finds the right dataType (mediates between content-type and expected dataType)
+ * - returns the corresponding response
+ */
+function ajaxHandleResponses( s, jqXHR, responses ) {
+
+	var ct, type, finalDataType, firstDataType,
+		contents = s.contents,
+		dataTypes = s.dataTypes,
+		responseFields = s.responseFields;
+
+	// Fill responseXXX fields
+	for ( type in responseFields ) {
+		if ( type in responses ) {
+			jqXHR[ responseFields[type] ] = responses[ type ];
+		}
+	}
+
+	// Remove auto dataType and get content-type in the process
+	while( dataTypes[ 0 ] === "*" ) {
+		dataTypes.shift();
+		if ( ct === undefined ) {
+			ct = s.mimeType || jqXHR.getResponseHeader( "content-type" );
+		}
+	}
+
+	// Check if we're dealing with a known content-type
+	if ( ct ) {
+		for ( type in contents ) {
+			if ( contents[ type ] && contents[ type ].test( ct ) ) {
+				dataTypes.unshift( type );
+				break;
+			}
+		}
+	}
+
+	// Check to see if we have a response for the expected dataType
+	if ( dataTypes[ 0 ] in responses ) {
+		finalDataType = dataTypes[ 0 ];
+	} else {
+		// Try convertible dataTypes
+		for ( type in responses ) {
+			if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
+				finalDataType = type;
+				break;
+			}
+			if ( !firstDataType ) {
+				firstDataType = type;
+			}
+		}
+		// Or just use first one
+		finalDataType = finalDataType || firstDataType;
+	}
+
+	// If we found a dataType
+	// We add the dataType to the list if needed
+	// and return the corresponding response
+	if ( finalDataType ) {
+		if ( finalDataType !== dataTypes[ 0 ] ) {
+			dataTypes.unshift( finalDataType );
+		}
+		return responses[ finalDataType ];
+	}
+}
+
+// Chain conversions given the request and the original response
+function ajaxConvert( s, response ) {
+
+	var conv, conv2, current, tmp,
+		// Work with a copy of dataTypes in case we need to modify it for conversion
+		dataTypes = s.dataTypes.slice(),
+		prev = dataTypes[ 0 ],
+		converters = {},
+		i = 0;
+
+	// Apply the dataFilter if provided
+	if ( s.dataFilter ) {
+		response = s.dataFilter( response, s.dataType );
+	}
+
+	// Create converters map with lowercased keys
+	if ( dataTypes[ 1 ] ) {
+		for ( conv in s.converters ) {
+			converters[ conv.toLowerCase() ] = s.converters[ conv ];
+		}
+	}
+
+	// Convert to each sequential dataType, tolerating list modification
+	for ( ; (current = dataTypes[++i]); ) {
+
+		// There's only work to do if current dataType is non-auto
+		if ( current !== "*" ) {
+
+			// Convert response if prev dataType is non-auto and differs from current
+			if ( prev !== "*" && prev !== current ) {
+
+				// Seek a direct converter
+				conv = converters[ prev + " " + current ] || converters[ "* " + current ];
+
+				// If none found, seek a pair
+				if ( !conv ) {
+					for ( conv2 in converters ) {
+
+						// If conv2 outputs current
+						tmp = conv2.split(" ");
+						if ( tmp[ 1 ] === current ) {
+
+							// If prev can be converted to accepted input
+							conv = converters[ prev + " " + tmp[ 0 ] ] ||
+								converters[ "* " + tmp[ 0 ] ];
+							if ( conv ) {
+								// Condense equivalence converters
+								if ( conv === true ) {
+									conv = converters[ conv2 ];
+
+								// Otherwise, insert the intermediate dataType
+								} else if ( converters[ conv2 ] !== true ) {
+									current = tmp[ 0 ];
+									dataTypes.splice( i--, 0, current );
+								}
+
+								break;
+							}
+						}
+					}
+				}
+
+				// Apply converter (if not an equivalence)
+				if ( conv !== true ) {
+
+					// Unless errors are allowed to bubble, catch and return them
+					if ( conv && s["throws"] ) {
+						response = conv( response );
+					} else {
+						try {
+							response = conv( response );
+						} catch ( e ) {
+							return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current };
+						}
+					}
+				}
+			}
+
+			// Update prev for next iteration
+			prev = current;
+		}
+	}
+
+	return { state: "success", data: response };
+}
+var oldCallbacks = [],
+	rquestion = /\?/,
+	rjsonp = /(=)\?(?=&|$)|\?\?/,
+	nonce = jQuery.now();
+
+// Default jsonp settings
+jQuery.ajaxSetup({
+	jsonp: "callback",
+	jsonpCallback: function() {
+		var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) );
+		this[ callback ] = true;
+		return callback;
+	}
+});
+
+// Detect, normalize options and install callbacks for jsonp requests
+jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
+
+	var callbackName, overwritten, responseContainer,
+		data = s.data,
+		url = s.url,
+		hasCallback = s.jsonp !== false,
+		replaceInUrl = hasCallback && rjsonp.test( url ),
+		replaceInData = hasCallback && !replaceInUrl && typeof data === "string" &&
+			!( s.contentType || "" ).indexOf("application/x-www-form-urlencoded") &&
+			rjsonp.test( data );
+
+	// Handle iff the expected data type is "jsonp" or we have a parameter to set
+	if ( s.dataTypes[ 0 ] === "jsonp" || replaceInUrl || replaceInData ) {
+
+		// Get callback name, remembering preexisting value associated with it
+		callbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ?
+			s.jsonpCallback() :
+			s.jsonpCallback;
+		overwritten = window[ callbackName ];
+
+		// Insert callback into url or form data
+		if ( replaceInUrl ) {
+			s.url = url.replace( rjsonp, "$1" + callbackName );
+		} else if ( replaceInData ) {
+			s.data = data.replace( rjsonp, "$1" + callbackName );
+		} else if ( hasCallback ) {
+			s.url += ( rquestion.test( url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName;
+		}
+
+		// Use data converter to retrieve json after script execution
+		s.converters["script json"] = function() {
+			if ( !responseContainer ) {
+				jQuery.error( callbackName + " was not called" );
+			}
+			return responseContainer[ 0 ];
+		};
+
+		// force json dataType
+		s.dataTypes[ 0 ] = "json";
+
+		// Install callback
+		window[ callbackName ] = function() {
+			responseContainer = arguments;
+		};
+
+		// Clean-up function (fires after converters)
+		jqXHR.always(function() {
+			// Restore preexisting value
+			window[ callbackName ] = overwritten;
+
+			// Save back as free
+			if ( s[ callbackName ] ) {
+				// make sure that re-using the options doesn't screw things around
+				s.jsonpCallback = originalSettings.jsonpCallback;
+
+				// save the callback name for future use
+				oldCallbacks.push( callbackName );
+			}
+
+			// Call if it was a function and we have a response
+			if ( responseContainer && jQuery.isFunction( overwritten ) ) {
+				overwritten( responseContainer[ 0 ] );
+			}
+
+			responseContainer = overwritten = undefined;
+		});
+
+		// Delegate to script
+		return "script";
+	}
+});
+// Install script dataType
+jQuery.ajaxSetup({
+	accepts: {
+		script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
+	},
+	contents: {
+		script: /javascript|ecmascript/
+	},
+	converters: {
+		"text script": function( text ) {
+			jQuery.globalEval( text );
+			return text;
+		}
+	}
+});
+
+// Handle cache's special case and global
+jQuery.ajaxPrefilter( "script", function( s ) {
+	if ( s.cache === undefined ) {
+		s.cache = false;
+	}
+	if ( s.crossDomain ) {
+		s.type = "GET";
+		s.global = false;
+	}
+});
+
+// Bind script tag hack transport
+jQuery.ajaxTransport( "script", function(s) {
+
+	// This transport only deals with cross domain requests
+	if ( s.crossDomain ) {
+
+		var script,
+			head = document.head || document.getElementsByTagName( "head" )[0] || document.documentElement;
+
+		return {
+
+			send: function( _, callback ) {
+
+				script = document.createElement( "script" );
+
+				script.async = "async";
+
+				if ( s.scriptCharset ) {
+					script.charset = s.scriptCharset;
+				}
+
+				script.src = s.url;
+
+				// Attach handlers for all browsers
+				script.onload = script.onreadystatechange = function( _, isAbort ) {
+
+					if ( isAbort || !script.readyState || /loaded|complete/.test( script.readyState ) ) {
+
+						// Handle memory leak in IE
+						script.onload = script.onreadystatechange = null;
+
+						// Remove the script
+						if ( head && script.parentNode ) {
+							head.removeChild( script );
+						}
+
+						// Dereference the script
+						script = undefined;
+
+						// Callback if not abort
+						if ( !isAbort ) {
+							callback( 200, "success" );
+						}
+					}
+				};
+				// Use insertBefore instead of appendChild  to circumvent an IE6 bug.
+				// This arises when a base node is used (#2709 and #4378).
+				head.insertBefore( script, head.firstChild );
+			},
+
+			abort: function() {
+				if ( script ) {
+					script.onload( 0, 1 );
+				}
+			}
+		};
+	}
+});
+var xhrCallbacks,
+	// #5280: Internet Explorer will keep connections alive if we don't abort on unload
+	xhrOnUnloadAbort = window.ActiveXObject ? function() {
+		// Abort all pending requests
+		for ( var key in xhrCallbacks ) {
+			xhrCallbacks[ key ]( 0, 1 );
+		}
+	} : false,
+	xhrId = 0;
+
+// Functions to create xhrs
+function createStandardXHR() {
+	try {
+		return new window.XMLHttpRequest();
+	} catch( e ) {}
+}
+
+function createActiveXHR() {
+	try {
+		return new window.ActiveXObject( "Microsoft.XMLHTTP" );
+	} catch( e ) {}
+}
+
+// Create the request object
+// (This is still attached to ajaxSettings for backward compatibility)
+jQuery.ajaxSettings.xhr = window.ActiveXObject ?
+	/* Microsoft failed to properly
+	 * implement the XMLHttpRequest in IE7 (can't request local files),
+	 * so we use the ActiveXObject when it is available
+	 * Additionally XMLHttpRequest can be disabled in IE7/IE8 so
+	 * we need a fallback.
+	 */
+	function() {
+		return !this.isLocal && createStandardXHR() || createActiveXHR();
+	} :
+	// For all other browsers, use the standard XMLHttpRequest object
+	createStandardXHR;
+
+// Determine support properties
+(function( xhr ) {
+	jQuery.extend( jQuery.support, {
+		ajax: !!xhr,
+		cors: !!xhr && ( "withCredentials" in xhr )
+	});
+})( jQuery.ajaxSettings.xhr() );
+
+// Create transport if the browser can provide an xhr
+if ( jQuery.support.ajax ) {
+
+	jQuery.ajaxTransport(function( s ) {
+		// Cross domain only allowed if supported through XMLHttpRequest
+		if ( !s.crossDomain || jQuery.support.cors ) {
+
+			var callback;
+
+			return {
+				send: function( headers, complete ) {
+
+					// Get a new xhr
+					var handle, i,
+						xhr = s.xhr();
+
+					// Open the socket
+					// Passing null username, generates a login popup on Opera (#2865)
+					if ( s.username ) {
+						xhr.open( s.type, s.url, s.async, s.username, s.password );
+					} else {
+						xhr.open( s.type, s.url, s.async );
+					}
+
+					// Apply custom fields if provided
+					if ( s.xhrFields ) {
+						for ( i in s.xhrFields ) {
+							xhr[ i ] = s.xhrFields[ i ];
+						}
+					}
+
+					// Override mime type if needed
+					if ( s.mimeType && xhr.overrideMimeType ) {
+						xhr.overrideMimeType( s.mimeType );
+					}
+
+					// X-Requested-With header
+					// For cross-domain requests, seeing as conditions for a preflight are
+					// akin to a jigsaw puzzle, we simply never set it to be sure.
+					// (it can always be set on a per-request basis or even using ajaxSetup)
+					// For same-domain requests, won't change header if already provided.
+					if ( !s.crossDomain && !headers["X-Requested-With"] ) {
+						headers[ "X-Requested-With" ] = "XMLHttpRequest";
+					}
+
+					// Need an extra try/catch for cross domain requests in Firefox 3
+					try {
+						for ( i in headers ) {
+							xhr.setRequestHeader( i, headers[ i ] );
+						}
+					} catch( _ ) {}
+
+					// Do send the request
+					// This may raise an exception which is actually
+					// handled in jQuery.ajax (so no try/catch here)
+					xhr.send( ( s.hasContent && s.data ) || null );
+
+					// Listener
+					callback = function( _, isAbort ) {
+
+						var status,
+							statusText,
+							responseHeaders,
+							responses,
+							xml;
+
+						// Firefox throws exceptions when accessing properties
+						// of an xhr when a network error occurred
+						// http://helpful.knobs-dials.com/index.php/Component_returned_failure_code:_0x80040111_(NS_ERROR_NOT_AVAILABLE)
+						try {
+
+							// Was never called and is aborted or complete
+							if ( callback && ( isAbort || xhr.readyState === 4 ) ) {
+
+								// Only called once
+								callback = undefined;
+
+								// Do not keep as active anymore
+								if ( handle ) {
+									xhr.onreadystatechange = jQuery.noop;
+									if ( xhrOnUnloadAbort ) {
+										delete xhrCallbacks[ handle ];
+									}
+								}
+
+								// If it's an abort
+								if ( isAbort ) {
+									// Abort it manually if needed
+									if ( xhr.readyState !== 4 ) {
+										xhr.abort();
+									}
+								} else {
+									status = xhr.status;
+									responseHeaders = xhr.getAllResponseHeaders();
+									responses = {};
+									xml = xhr.responseXML;
+
+									// Construct response list
+									if ( xml && xml.documentElement /* #4958 */ ) {
+										responses.xml = xml;
+									}
+
+									// When requesting binary data, IE6-9 will throw an exception
+									// on any attempt to access responseText (#11426)
+									try {
+										responses.text = xhr.responseText;
+									} catch( e ) {
+									}
+
+									// Firefox throws an exception when accessing
+									// statusText for faulty cross-domain requests
+									try {
+										statusText = xhr.statusText;
+									} catch( e ) {
+										// We normalize with Webkit giving an empty statusText
+										statusText = "";
+									}
+
+									// Filter status for non standard behaviors
+
+									// If the request is local and we have data: assume a success
+									// (success with no data won't get notified, that's the best we
+									// can do given current implementations)
+									if ( !status && s.isLocal && !s.crossDomain ) {
+										status = responses.text ? 200 : 404;
+									// IE - #1450: sometimes returns 1223 when it should be 204
+									} else if ( status === 1223 ) {
+										status = 204;
+									}
+								}
+							}
+						} catch( firefoxAccessException ) {
+							if ( !isAbort ) {
+								complete( -1, firefoxAccessException );
+							}
+						}
+
+						// Call complete if needed
+						if ( responses ) {
+							complete( status, statusText, responses, responseHeaders );
+						}
+					};
+
+					if ( !s.async ) {
+						// if we're in sync mode we fire the callback
+						callback();
+					} else if ( xhr.readyState === 4 ) {
+						// (IE6 & IE7) if it's in cache and has been
+						// retrieved directly we need to fire the callback
+						setTimeout( callback, 0 );
+					} else {
+						handle = ++xhrId;
+						if ( xhrOnUnloadAbort ) {
+							// Create the active xhrs callbacks list if needed
+							// and attach the unload handler
+							if ( !xhrCallbacks ) {
+								xhrCallbacks = {};
+								jQuery( window ).unload( xhrOnUnloadAbort );
+							}
+							// Add to list of active xhrs callbacks
+							xhrCallbacks[ handle ] = callback;
+						}
+						xhr.onreadystatechange = callback;
+					}
+				},
+
+				abort: function() {
+					if ( callback ) {
+						callback(0,1);
+					}
+				}
+			};
+		}
+	});
+}
+var fxNow, timerId,
+	rfxtypes = /^(?:toggle|show|hide)$/,
+	rfxnum = new RegExp( "^(?:([-+])=|)(" + core_pnum + ")([a-z%]*)$", "i" ),
+	rrun = /queueHooks$/,
+	animationPrefilters = [ defaultPrefilter ],
+	tweeners = {
+		"*": [function( prop, value ) {
+			var end, unit,
+				tween = this.createTween( prop, value ),
+				parts = rfxnum.exec( value ),
+				target = tween.cur(),
+				start = +target || 0,
+				scale = 1,
+				maxIterations = 20;
+
+			if ( parts ) {
+				end = +parts[2];
+				unit = parts[3] || ( jQuery.cssNumber[ prop ] ? "" : "px" );
+
+				// We need to compute starting value
+				if ( unit !== "px" && start ) {
+					// Iteratively approximate from a nonzero starting point
+					// Prefer the current property, because this process will be trivial if it uses the same units
+					// Fallback to end or a simple constant
+					start = jQuery.css( tween.elem, prop, true ) || end || 1;
+
+					do {
+						// If previous iteration zeroed out, double until we get *something*
+						// Use a string for doubling factor so we don't accidentally see scale as unchanged below
+						scale = scale || ".5";
+
+						// Adjust and apply
+						start = start / scale;
+						jQuery.style( tween.elem, prop, start + unit );
+
+					// Update scale, tolerating zero or NaN from tween.cur()
+					// And breaking the loop if scale is unchanged or perfect, or if we've just had enough
+					} while ( scale !== (scale = tween.cur() / target) && scale !== 1 && --maxIterations );
+				}
+
+				tween.unit = unit;
+				tween.start = start;
+				// If a +=/-= token was provided, we're doing a relative animation
+				tween.end = parts[1] ? start + ( parts[1] + 1 ) * end : end;
+			}
+			return tween;
+		}]
+	};
+
+// Animations created synchronously will run synchronously
+function createFxNow() {
+	setTimeout(function() {
+		fxNow = undefined;
+	}, 0 );
+	return ( fxNow = jQuery.now() );
+}
+
+function createTweens( animation, props ) {
+	jQuery.each( props, function( prop, value ) {
+		var collection = ( tweeners[ prop ] || [] ).concat( tweeners[ "*" ] ),
+			index = 0,
+			length = collection.length;
+		for ( ; index < length; index++ ) {
+			if ( collection[ index ].call( animation, prop, value ) ) {
+
+				// we're done with this property
+				return;
+			}
+		}
+	});
+}
+
+function Animation( elem, properties, options ) {
+	var result,
+		index = 0,
+		tweenerIndex = 0,
+		length = animationPrefilters.length,
+		deferred = jQuery.Deferred().always( function() {
+			// don't match elem in the :animated selector
+			delete tick.elem;
+		}),
+		tick = function() {
+			var currentTime = fxNow || createFxNow(),
+				remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),
+				// archaic crash bug won't allow us to use 1 - ( 0.5 || 0 ) (#12497)
+				temp = remaining / animation.duration || 0,
+				percent = 1 - temp,
+				index = 0,
+				length = animation.tweens.length;
+
+			for ( ; index < length ; index++ ) {
+				animation.tweens[ index ].run( percent );
+			}
+
+			deferred.notifyWith( elem, [ animation, percent, remaining ]);
+
+			if ( percent < 1 && length ) {
+				return remaining;
+			} else {
+				deferred.resolveWith( elem, [ animation ] );
+				return false;
+			}
+		},
+		animation = deferred.promise({
+			elem: elem,
+			props: jQuery.extend( {}, properties ),
+			opts: jQuery.extend( true, { specialEasing: {} }, options ),
+			originalProperties: properties,
+			originalOptions: options,
+			startTime: fxNow || createFxNow(),
+			duration: options.duration,
+			tweens: [],
+			createTween: function( prop, end, easing ) {
+				var tween = jQuery.Tween( elem, animation.opts, prop, end,
+						animation.opts.specialEasing[ prop ] || animation.opts.easing );
+				animation.tweens.push( tween );
+				return tween;
+			},
+			stop: function( gotoEnd ) {
+				var index = 0,
+					// if we are going to the end, we want to run all the tweens
+					// otherwise we skip this part
+					length = gotoEnd ? animation.tweens.length : 0;
+
+				for ( ; index < length ; index++ ) {
+					animation.tweens[ index ].run( 1 );
+				}
+
+				// resolve when we played the last frame
+				// otherwise, reject
+				if ( gotoEnd ) {
+					deferred.resolveWith( elem, [ animation, gotoEnd ] );
+				} else {
+					deferred.rejectWith( elem, [ animation, gotoEnd ] );
+				}
+				return this;
+			}
+		}),
+		props = animation.props;
+
+	propFilter( props, animation.opts.specialEasing );
+
+	for ( ; index < length ; index++ ) {
+		result = animationPrefilters[ index ].call( animation, elem, props, animation.opts );
+		if ( result ) {
+			return result;
+		}
+	}
+
+	createTweens( animation, props );
+
+	if ( jQuery.isFunction( animation.opts.start ) ) {
+		animation.opts.start.call( elem, animation );
+	}
+
+	jQuery.fx.timer(
+		jQuery.extend( tick, {
+			anim: animation,
+			queue: animation.opts.queue,
+			elem: elem
+		})
+	);
+
+	// attach callbacks from options
+	return animation.progress( animation.opts.progress )
+		.done( animation.opts.done, animation.opts.complete )
+		.fail( animation.opts.fail )
+		.always( animation.opts.always );
+}
+
+function propFilter( props, specialEasing ) {
+	var index, name, easing, value, hooks;
+
+	// camelCase, specialEasing and expand cssHook pass
+	for ( index in props ) {
+		name = jQuery.camelCase( index );
+		easing = specialEasing[ name ];
+		value = props[ index ];
+		if ( jQuery.isArray( value ) ) {
+			easing = value[ 1 ];
+			value = props[ index ] = value[ 0 ];
+		}
+
+		if ( index !== name ) {
+			props[ name ] = value;
+			delete props[ index ];
+		}
+
+		hooks = jQuery.cssHooks[ name ];
+		if ( hooks && "expand" in hooks ) {
+			value = hooks.expand( value );
+			delete props[ name ];
+
+			// not quite $.extend, this wont overwrite keys already present.
+			// also - reusing 'index' from above because we have the correct "name"
+			for ( index in value ) {
+				if ( !( index in props ) ) {
+					props[ index ] = value[ index ];
+					specialEasing[ index ] = easing;
+				}
+			}
+		} else {
+			specialEasing[ name ] = easing;
+		}
+	}
+}
+
+jQuery.Animation = jQuery.extend( Animation, {
+
+	tweener: function( props, callback ) {
+		if ( jQuery.isFunction( props ) ) {
+			callback = props;
+			props = [ "*" ];
+		} else {
+			props = props.split(" ");
+		}
+
+		var prop,
+			index = 0,
+			length = props.length;
+
+		for ( ; index < length ; index++ ) {
+			prop = props[ index ];
+			tweeners[ prop ] = tweeners[ prop ] || [];
+			tweeners[ prop ].unshift( callback );
+		}
+	},
+
+	prefilter: function( callback, prepend ) {
+		if ( prepend ) {
+			animationPrefilters.unshift( callback );
+		} else {
+			animationPrefilters.push( callback );
+		}
+	}
+});
+
+function defaultPrefilter( elem, props, opts ) {
+	var index, prop, value, length, dataShow, toggle, tween, hooks, oldfire,
+		anim = this,
+		style = elem.style,
+		orig = {},
+		handled = [],
+		hidden = elem.nodeType && isHidden( elem );
+
+	// handle queue: false promises
+	if ( !opts.queue ) {
+		hooks = jQuery._queueHooks( elem, "fx" );
+		if ( hooks.unqueued == null ) {
+			hooks.unqueued = 0;
+			oldfire = hooks.empty.fire;
+			hooks.empty.fire = function() {
+				if ( !hooks.unqueued ) {
+					oldfire();
+				}
+			};
+		}
+		hooks.unqueued++;
+
+		anim.always(function() {
+			// doing this makes sure that the complete handler will be called
+			// before this completes
+			anim.always(function() {
+				hooks.unqueued--;
+				if ( !jQuery.queue( elem, "fx" ).length ) {
+					hooks.empty.fire();
+				}
+			});
+		});
+	}
+
+	// height/width overflow pass
+	if ( elem.nodeType === 1 && ( "height" in props || "width" in props ) ) {
+		// Make sure that nothing sneaks out
+		// Record all 3 overflow attributes because IE does not
+		// change the overflow attribute when overflowX and
+		// overflowY are set to the same value
+		opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];
+
+		// Set display property to inline-block for height/width
+		// animations on inline elements that are having width/height animated
+		if ( jQuery.css( elem, "display" ) === "inline" &&
+				jQuery.css( elem, "float" ) === "none" ) {
+
+			// inline-level elements accept inline-block;
+			// block-level elements need to be inline with layout
+			if ( !jQuery.support.inlineBlockNeedsLayout || css_defaultDisplay( elem.nodeName ) === "inline" ) {
+				style.display = "inline-block";
+
+			} else {
+				style.zoom = 1;
+			}
+		}
+	}
+
+	if ( opts.overflow ) {
+		style.overflow = "hidden";
+		if ( !jQuery.support.shrinkWrapBlocks ) {
+			anim.done(function() {
+				style.overflow = opts.overflow[ 0 ];
+				style.overflowX = opts.overflow[ 1 ];
+				style.overflowY = opts.overflow[ 2 ];
+			});
+		}
+	}
+
+
+	// show/hide pass
+	for ( index in props ) {
+		value = props[ index ];
+		if ( rfxtypes.exec( value ) ) {
+			delete props[ index ];
+			toggle = toggle || value === "toggle";
+			if ( value === ( hidden ? "hide" : "show" ) ) {
+				continue;
+			}
+			handled.push( index );
+		}
+	}
+
+	length = handled.length;
+	if ( length ) {
+		dataShow = jQuery._data( elem, "fxshow" ) || jQuery._data( elem, "fxshow", {} );
+		if ( "hidden" in dataShow ) {
+			hidden = dataShow.hidden;
+		}
+
+		// store state if its toggle - enables .stop().toggle() to "reverse"
+		if ( toggle ) {
+			dataShow.hidden = !hidden;
+		}
+		if ( hidden ) {
+			jQuery( elem ).show();
+		} else {
+			anim.done(function() {
+				jQuery( elem ).hide();
+			});
+		}
+		anim.done(function() {
+			var prop;
+			jQuery.removeData( elem, "fxshow", true );
+			for ( prop in orig ) {
+				jQuery.style( elem, prop, orig[ prop ] );
+			}
+		});
+		for ( index = 0 ; index < length ; index++ ) {
+			prop = handled[ index ];
+			tween = anim.createTween( prop, hidden ? dataShow[ prop ] : 0 );
+			orig[ prop ] = dataShow[ prop ] || jQuery.style( elem, prop );
+
+			if ( !( prop in dataShow ) ) {
+				dataShow[ prop ] = tween.start;
+				if ( hidden ) {
+					tween.end = tween.start;
+					tween.start = prop === "width" || prop === "height" ? 1 : 0;
+				}
+			}
+		}
+	}
+}
+
+function Tween( elem, options, prop, end, easing ) {
+	return new Tween.prototype.init( elem, options, prop, end, easing );
+}
+jQuery.Tween = Tween;
+
+Tween.prototype = {
+	constructor: Tween,
+	init: function( elem, options, prop, end, easing, unit ) {
+		this.elem = elem;
+		this.prop = prop;
+		this.easing = easing || "swing";
+		this.options = options;
+		this.start = this.now = this.cur();
+		this.end = end;
+		this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );
+	},
+	cur: function() {
+		var hooks = Tween.propHooks[ this.prop ];
+
+		return hooks && hooks.get ?
+			hooks.get( this ) :
+			Tween.propHooks._default.get( this );
+	},
+	run: function( percent ) {
+		var eased,
+			hooks = Tween.propHooks[ this.prop ];
+
+		if ( this.options.duration ) {
+			this.pos = eased = jQuery.easing[ this.easing ](
+				percent, this.options.duration * percent, 0, 1, this.options.duration
+			);
+		} else {
+			this.pos = eased = percent;
+		}
+		this.now = ( this.end - this.start ) * eased + this.start;
+
+		if ( this.options.step ) {
+			this.options.step.call( this.elem, this.now, this );
+		}
+
+		if ( hooks && hooks.set ) {
+			hooks.set( this );
+		} else {
+			Tween.propHooks._default.set( this );
+		}
+		return this;
+	}
+};
+
+Tween.prototype.init.prototype = Tween.prototype;
+
+Tween.propHooks = {
+	_default: {
+		get: function( tween ) {
+			var result;
+
+			if ( tween.elem[ tween.prop ] != null &&
+				(!tween.elem.style || tween.elem.style[ tween.prop ] == null) ) {
+				return tween.elem[ tween.prop ];
+			}
+
+			// passing any value as a 4th parameter to .css will automatically
+			// attempt a parseFloat and fallback to a string if the parse fails
+			// so, simple values such as "10px" are parsed to Float.
+			// complex values such as "rotate(1rad)" are returned as is.
+			result = jQuery.css( tween.elem, tween.prop, false, "" );
+			// Empty strings, null, undefined and "auto" are converted to 0.
+			return !result || result === "auto" ? 0 : result;
+		},
+		set: function( tween ) {
+			// use step hook for back compat - use cssHook if its there - use .style if its
+			// available and use plain properties where available
+			if ( jQuery.fx.step[ tween.prop ] ) {
+				jQuery.fx.step[ tween.prop ]( tween );
+			} else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || jQuery.cssHooks[ tween.prop ] ) ) {
+				jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
+			} else {
+				tween.elem[ tween.prop ] = tween.now;
+			}
+		}
+	}
+};
+
+// Remove in 2.0 - this supports IE8's panic based approach
+// to setting things on disconnected nodes
+
+Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
+	set: function( tween ) {
+		if ( tween.elem.nodeType && tween.elem.parentNode ) {
+			tween.elem[ tween.prop ] = tween.now;
+		}
+	}
+};
+
+jQuery.each([ "toggle", "show", "hide" ], function( i, name ) {
+	var cssFn = jQuery.fn[ name ];
+	jQuery.fn[ name ] = function( speed, easing, callback ) {
+		return speed == null || typeof speed === "boolean" ||
+			// special check for .toggle( handler, handler, ... )
+			( !i && jQuery.isFunction( speed ) && jQuery.isFunction( easing ) ) ?
+			cssFn.apply( this, arguments ) :
+			this.animate( genFx( name, true ), speed, easing, callback );
+	};
+});
+
+jQuery.fn.extend({
+	fadeTo: function( speed, to, easing, callback ) {
+
+		// show any hidden elements after setting opacity to 0
+		return this.filter( isHidden ).css( "opacity", 0 ).show()
+
+			// animate to the value specified
+			.end().animate({ opacity: to }, speed, easing, callback );
+	},
+	animate: function( prop, speed, easing, callback ) {
+		var empty = jQuery.isEmptyObject( prop ),
+			optall = jQuery.speed( speed, easing, callback ),
+			doAnimation = function() {
+				// Operate on a copy of prop so per-property easing won't be lost
+				var anim = Animation( this, jQuery.extend( {}, prop ), optall );
+
+				// Empty animations resolve immediately
+				if ( empty ) {
+					anim.stop( true );
+				}
+			};
+
+		return empty || optall.queue === false ?
+			this.each( doAnimation ) :
+			this.queue( optall.queue, doAnimation );
+	},
+	stop: function( type, clearQueue, gotoEnd ) {
+		var stopQueue = function( hooks ) {
+			var stop = hooks.stop;
+			delete hooks.stop;
+			stop( gotoEnd );
+		};
+
+		if ( typeof type !== "string" ) {
+			gotoEnd = clearQueue;
+			clearQueue = type;
+			type = undefined;
+		}
+		if ( clearQueue && type !== false ) {
+			this.queue( type || "fx", [] );
+		}
+
+		return this.each(function() {
+			var dequeue = true,
+				index = type != null && type + "queueHooks",
+				timers = jQuery.timers,
+				data = jQuery._data( this );
+
+			if ( index ) {
+				if ( data[ index ] && data[ index ].stop ) {
+					stopQueue( data[ index ] );
+				}
+			} else {
+				for ( index in data ) {
+					if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
+						stopQueue( data[ index ] );
+					}
+				}
+			}
+
+			for ( index = timers.length; index--; ) {
+				if ( timers[ index ].elem === this && (type == null || timers[ index ].queue === type) ) {
+					timers[ index ].anim.stop( gotoEnd );
+					dequeue = false;
+					timers.splice( index, 1 );
+				}
+			}
+
+			// start the next in the queue if the last step wasn't forced
+			// timers currently will call their complete callbacks, which will dequeue
+			// but only if they were gotoEnd
+			if ( dequeue || !gotoEnd ) {
+				jQuery.dequeue( this, type );
+			}
+		});
+	}
+});
+
+// Generate parameters to create a standard animation
+function genFx( type, includeWidth ) {
+	var which,
+		attrs = { height: type },
+		i = 0;
+
+	// if we include width, step value is 1 to do all cssExpand values,
+	// if we don't include width, step value is 2 to skip over Left and Right
+	includeWidth = includeWidth? 1 : 0;
+	for( ; i < 4 ; i += 2 - includeWidth ) {
+		which = cssExpand[ i ];
+		attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
+	}
+
+	if ( includeWidth ) {
+		attrs.opacity = attrs.width = type;
+	}
+
+	return attrs;
+}
+
+// Generate shortcuts for custom animations
+jQuery.each({
+	slideDown: genFx("show"),
+	slideUp: genFx("hide"),
+	slideToggle: genFx("toggle"),
+	fadeIn: { opacity: "show" },
+	fadeOut: { opacity: "hide" },
+	fadeToggle: { opacity: "toggle" }
+}, function( name, props ) {
+	jQuery.fn[ name ] = function( speed, easing, callback ) {
+		return this.animate( props, speed, easing, callback );
+	};
+});
+
+jQuery.speed = function( speed, easing, fn ) {
+	var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
+		complete: fn || !fn && easing ||
+			jQuery.isFunction( speed ) && speed,
+		duration: speed,
+		easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing
+	};
+
+	opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration :
+		opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default;
+
+	// normalize opt.queue - true/undefined/null -> "fx"
+	if ( opt.queue == null || opt.queue === true ) {
+		opt.queue = "fx";
+	}
+
+	// Queueing
+	opt.old = opt.complete;
+
+	opt.complete = function() {
+		if ( jQuery.isFunction( opt.old ) ) {
+			opt.old.call( this );
+		}
+
+		if ( opt.queue ) {
+			jQuery.dequeue( this, opt.queue );
+		}
+	};
+
+	return opt;
+};
+
+jQuery.easing = {
+	linear: function( p ) {
+		return p;
+	},
+	swing: function( p ) {
+		return 0.5 - Math.cos( p*Math.PI ) / 2;
+	}
+};
+
+jQuery.timers = [];
+jQuery.fx = Tween.prototype.init;
+jQuery.fx.tick = function() {
+	var timer,
+		timers = jQuery.timers,
+		i = 0;
+
+	fxNow = jQuery.now();
+
+	for ( ; i < timers.length; i++ ) {
+		timer = timers[ i ];
+		// Checks the timer has not already been removed
+		if ( !timer() && timers[ i ] === timer ) {
+			timers.splice( i--, 1 );
+		}
+	}
+
+	if ( !timers.length ) {
+		jQuery.fx.stop();
+	}
+	fxNow = undefined;
+};
+
+jQuery.fx.timer = function( timer ) {
+	if ( timer() && jQuery.timers.push( timer ) && !timerId ) {
+		timerId = setInterval( jQuery.fx.tick, jQuery.fx.interval );
+	}
+};
+
+jQuery.fx.interval = 13;
+
+jQuery.fx.stop = function() {
+	clearInterval( timerId );
+	timerId = null;
+};
+
+jQuery.fx.speeds = {
+	slow: 600,
+	fast: 200,
+	// Default speed
+	_default: 400
+};
+
+// Back Compat <1.8 extension point
+jQuery.fx.step = {};
+
+if ( jQuery.expr && jQuery.expr.filters ) {
+	jQuery.expr.filters.animated = function( elem ) {
+		return jQuery.grep(jQuery.timers, function( fn ) {
+			return elem === fn.elem;
+		}).length;
+	};
+}
+var rroot = /^(?:body|html)$/i;
+
+jQuery.fn.offset = function( options ) {
+	if ( arguments.length ) {
+		return options === undefined ?
+			this :
+			this.each(function( i ) {
+				jQuery.offset.setOffset( this, options, i );
+			});
+	}
+
+	var docElem, body, win, clientTop, clientLeft, scrollTop, scrollLeft,
+		box = { top: 0, left: 0 },
+		elem = this[ 0 ],
+		doc = elem && elem.ownerDocument;
+
+	if ( !doc ) {
+		return;
+	}
+
+	if ( (body = doc.body) === elem ) {
+		return jQuery.offset.bodyOffset( elem );
+	}
+
+	docElem = doc.documentElement;
+
+	// Make sure it's not a disconnected DOM node
+	if ( !jQuery.contains( docElem, elem ) ) {
+		return box;
+	}
+
+	// If we don't have gBCR, just use 0,0 rather than error
+	// BlackBerry 5, iOS 3 (original iPhone)
+	if ( typeof elem.getBoundingClientRect !== "undefined" ) {
+		box = elem.getBoundingClientRect();
+	}
+	win = getWindow( doc );
+	clientTop  = docElem.clientTop  || body.clientTop  || 0;
+	clientLeft = docElem.clientLeft || body.clientLeft || 0;
+	scrollTop  = win.pageYOffset || docElem.scrollTop;
+	scrollLeft = win.pageXOffset || docElem.scrollLeft;
+	return {
+		top: box.top  + scrollTop  - clientTop,
+		left: box.left + scrollLeft - clientLeft
+	};
+};
+
+jQuery.offset = {
+
+	bodyOffset: function( body ) {
+		var top = body.offsetTop,
+			left = body.offsetLeft;
+
+		if ( jQuery.support.doesNotIncludeMarginInBodyOffset ) {
+			top  += parseFloat( jQuery.css(body, "marginTop") ) || 0;
+			left += parseFloat( jQuery.css(body, "marginLeft") ) || 0;
+		}
+
+		return { top: top, left: left };
+	},
+
+	setOffset: function( elem, options, i ) {
+		var position = jQuery.css( elem, "position" );
+
+		// set position first, in-case top/left are set even on static elem
+		if ( position === "static" ) {
+			elem.style.position = "relative";
+		}
+
+		var curElem = jQuery( elem ),
+			curOffset = curElem.offset(),
+			curCSSTop = jQuery.css( elem, "top" ),
+			curCSSLeft = jQuery.css( elem, "left" ),
+			calculatePosition = ( position === "absolute" || position === "fixed" ) && jQuery.inArray("auto", [curCSSTop, curCSSLeft]) > -1,
+			props = {}, curPosition = {}, curTop, curLeft;
+
+		// need to be able to calculate position if either top or left is auto and position is either absolute or fixed
+		if ( calculatePosition ) {
+			curPosition = curElem.position();
+			curTop = curPosition.top;
+			curLeft = curPosition.left;
+		} else {
+			curTop = parseFloat( curCSSTop ) || 0;
+			curLeft = parseFloat( curCSSLeft ) || 0;
+		}
+
+		if ( jQuery.isFunction( options ) ) {
+			options = options.call( elem, i, curOffset );
+		}
+
+		if ( options.top != null ) {
+			props.top = ( options.top - curOffset.top ) + curTop;
+		}
+		if ( options.left != null ) {
+			props.left = ( options.left - curOffset.left ) + curLeft;
+		}
+
+		if ( "using" in options ) {
+			options.using.call( elem, props );
+		} else {
+			curElem.css( props );
+		}
+	}
+};
+
+
+jQuery.fn.extend({
+
+	position: function() {
+		if ( !this[0] ) {
+			return;
+		}
+
+		var elem = this[0],
+
+		// Get *real* offsetParent
+		offsetParent = this.offsetParent(),
+
+		// Get correct offsets
+		offset       = this.offset(),
+		parentOffset = rroot.test(offsetParent[0].nodeName) ? { top: 0, left: 0 } : offsetParent.offset();
+
+		// Subtract element margins
+		// note: when an element has margin: auto the offsetLeft and marginLeft
+		// are the same in Safari causing offset.left to incorrectly be 0
+		offset.top  -= parseFloat( jQuery.css(elem, "marginTop") ) || 0;
+		offset.left -= parseFloat( jQuery.css(elem, "marginLeft") ) || 0;
+
+		// Add offsetParent borders
+		parentOffset.top  += parseFloat( jQuery.css(offsetParent[0], "borderTopWidth") ) || 0;
+		parentOffset.left += parseFloat( jQuery.css(offsetParent[0], "borderLeftWidth") ) || 0;
+
+		// Subtract the two offsets
+		return {
+			top:  offset.top  - parentOffset.top,
+			left: offset.left - parentOffset.left
+		};
+	},
+
+	offsetParent: function() {
+		return this.map(function() {
+			var offsetParent = this.offsetParent || document.body;
+			while ( offsetParent && (!rroot.test(offsetParent.nodeName) && jQuery.css(offsetParent, "position") === "static") ) {
+				offsetParent = offsetParent.offsetParent;
+			}
+			return offsetParent || document.body;
+		});
+	}
+});
+
+
+// Create scrollLeft and scrollTop methods
+jQuery.each( {scrollLeft: "pageXOffset", scrollTop: "pageYOffset"}, function( method, prop ) {
+	var top = /Y/.test( prop );
+
+	jQuery.fn[ method ] = function( val ) {
+		return jQuery.access( this, function( elem, method, val ) {
+			var win = getWindow( elem );
+
+			if ( val === undefined ) {
+				return win ? (prop in win) ? win[ prop ] :
+					win.document.documentElement[ method ] :
+					elem[ method ];
+			}
+
+			if ( win ) {
+				win.scrollTo(
+					!top ? val : jQuery( win ).scrollLeft(),
+					 top ? val : jQuery( win ).scrollTop()
+				);
+
+			} else {
+				elem[ method ] = val;
+			}
+		}, method, val, arguments.length, null );
+	};
+});
+
+function getWindow( elem ) {
+	return jQuery.isWindow( elem ) ?
+		elem :
+		elem.nodeType === 9 ?
+			elem.defaultView || elem.parentWindow :
+			false;
+}
+// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
+jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
+	jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, function( defaultExtra, funcName ) {
+		// margin is only for outerHeight, outerWidth
+		jQuery.fn[ funcName ] = function( margin, value ) {
+			var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
+				extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );
+
+			return jQuery.access( this, function( elem, type, value ) {
+				var doc;
+
+				if ( jQuery.isWindow( elem ) ) {
+					// As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there
+					// isn't a whole lot we can do. See pull request at this URL for discussion:
+					// https://github.com/jquery/jquery/pull/764
+					return elem.document.documentElement[ "client" + name ];
+				}
+
+				// Get document width or height
+				if ( elem.nodeType === 9 ) {
+					doc = elem.documentElement;
+
+					// Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height], whichever is greatest
+					// unfortunately, this causes bug #3838 in IE6/8 only, but there is currently no good, small way to fix it.
+					return Math.max(
+						elem.body[ "scroll" + name ], doc[ "scroll" + name ],
+						elem.body[ "offset" + name ], doc[ "offset" + name ],
+						doc[ "client" + name ]
+					);
+				}
+
+				return value === undefined ?
+					// Get width or height on the element, requesting but not forcing parseFloat
+					jQuery.css( elem, type, value, extra ) :
+
+					// Set width or height on the element
+					jQuery.style( elem, type, value, extra );
+			}, type, chainable ? margin : undefined, chainable, null );
+		};
+	});
+});
+// Expose jQuery to the global object
+window.jQuery = window.$ = jQuery;
+
+// Expose jQuery as an AMD module, but only for AMD loaders that
+// understand the issues with loading multiple versions of jQuery
+// in a page that all might call define(). The loader will indicate
+// they have special allowances for multiple jQuery versions by
+// specifying define.amd.jQuery = true. Register as a named module,
+// since jQuery can be concatenated with other files that may use define,
+// but not use a proper concatenation script that understands anonymous
+// AMD modules. A named AMD is safest and most robust way to register.
+// Lowercase jquery is used because AMD module names are derived from
+// file names, and jQuery is normally delivered in a lowercase file name.
+// Do this after creating the global so that if an AMD module wants to call
+// noConflict to hide this version of jQuery, it will work.
+if ( typeof define === "function" && define.amd && define.amd.jQuery ) {
+	define( "jquery", [], function () { return jQuery; } );
+}
+
+})( window );
+(function($, undefined) {
+
+/**
+ * Unobtrusive scripting adapter for jQuery
+ *
+ * Requires jQuery 1.6.0 or later.
+ * https://github.com/rails/jquery-ujs
+
+ * Uploading file using rails.js
+ * =============================
+ *
+ * By default, browsers do not allow files to be uploaded via AJAX. As a result, if there are any non-blank file fields
+ * in the remote form, this adapter aborts the AJAX submission and allows the form to submit through standard means.
+ *
+ * The `ajax:aborted:file` event allows you to bind your own handler to process the form submission however you wish.
+ *
+ * Ex:
+ *     $('form').live('ajax:aborted:file', function(event, elements){
+ *       // Implement own remote file-transfer handler here for non-blank file inputs passed in `elements`.
+ *       // Returning false in this handler tells rails.js to disallow standard form submission
+ *       return false;
+ *     });
+ *
+ * The `ajax:aborted:file` event is fired when a file-type input is detected with a non-blank value.
+ *
+ * Third-party tools can use this hook to detect when an AJAX file upload is attempted, and then use
+ * techniques like the iframe method to upload the file instead.
+ *
+ * Required fields in rails.js
+ * ===========================
+ *
+ * If any blank required inputs (required="required") are detected in the remote form, the whole form submission
+ * is canceled. Note that this is unlike file inputs, which still allow standard (non-AJAX) form submission.
+ *
+ * The `ajax:aborted:required` event allows you to bind your own handler to inform the user of blank required inputs.
+ *
+ * !! Note that Opera does not fire the form's submit event if there are blank required inputs, so this event may never
+ *    get fired in Opera. This event is what causes other browsers to exhibit the same submit-aborting behavior.
+ *
+ * Ex:
+ *     $('form').live('ajax:aborted:required', function(event, elements){
+ *       // Returning false in this handler tells rails.js to submit the form anyway.
+ *       // The blank required inputs are passed to this function in `elements`.
+ *       return ! confirm("Would you like to submit the form with missing info?");
+ *     });
+ */
+
+  // Cut down on the number if issues from people inadvertently including jquery_ujs twice
+  // by detecting and raising an error when it happens.
+  var alreadyInitialized = function() {
+    var events = $._data(document, 'events');
+    return events && events.click && $.grep(events.click, function(e) { return e.namespace === 'rails'; }).length;
+  }
+
+  if ( alreadyInitialized() ) {
+    $.error('jquery-ujs has already been loaded!');
+  }
+
+  // Shorthand to make it a little easier to call public rails functions from within rails.js
+  var rails;
+
+  $.rails = rails = {
+    // Link elements bound by jquery-ujs
+    linkClickSelector: 'a[data-confirm], a[data-method], a[data-remote], a[data-disable-with]',
+
+    // Select elements bound by jquery-ujs
+    inputChangeSelector: 'select[data-remote], input[data-remote], textarea[data-remote]',
+
+    // Form elements bound by jquery-ujs
+    formSubmitSelector: 'form',
+
+    // Form input elements bound by jquery-ujs
+    formInputClickSelector: 'form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])',
+
+    // Form input elements disabled during form submission
+    disableSelector: 'input[data-disable-with], button[data-disable-with], textarea[data-disable-with]',
+
+    // Form input elements re-enabled after form submission
+    enableSelector: 'input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled',
+
+    // Form required input elements
+    requiredInputSelector: 'input[name][required]:not([disabled]),textarea[name][required]:not([disabled])',
+
+    // Form file input elements
+    fileInputSelector: 'input:file',
+
+    // Link onClick disable selector with possible reenable after remote submission
+    linkDisableSelector: 'a[data-disable-with]',
+
+    // Make sure that every Ajax request sends the CSRF token
+    CSRFProtection: function(xhr) {
+      var token = $('meta[name="csrf-token"]').attr('content');
+      if (token) xhr.setRequestHeader('X-CSRF-Token', token);
+    },
+
+    // Triggers an event on an element and returns false if the event result is false
+    fire: function(obj, name, data) {
+      var event = $.Event(name);
+      obj.trigger(event, data);
+      return event.result !== false;
+    },
+
+    // Default confirm dialog, may be overridden with custom confirm dialog in $.rails.confirm
+    confirm: function(message) {
+      return confirm(message);
+    },
+
+    // Default ajax function, may be overridden with custom function in $.rails.ajax
+    ajax: function(options) {
+      return $.ajax(options);
+    },
+
+    // Default way to get an element's href. May be overridden at $.rails.href.
+    href: function(element) {
+      return element.attr('href');
+    },
+
+    // Submits "remote" forms and links with ajax
+    handleRemote: function(element) {
+      var method, url, data, elCrossDomain, crossDomain, withCredentials, dataType, options;
+
+      if (rails.fire(element, 'ajax:before')) {
+        elCrossDomain = element.data('cross-domain');
+        crossDomain = elCrossDomain === undefined ? null : elCrossDomain;
+        withCredentials = element.data('with-credentials') || null;
+        dataType = element.data('type') || ($.ajaxSettings && $.ajaxSettings.dataType);
+
+        if (element.is('form')) {
+          method = element.attr('method');
+          url = element.attr('action');
+          data = element.serializeArray();
+          // memoized value from clicked submit button
+          var button = element.data('ujs:submit-button');
+          if (button) {
+            data.push(button);
+            element.data('ujs:submit-button', null);
+          }
+        } else if (element.is(rails.inputChangeSelector)) {
+          method = element.data('method');
+          url = element.data('url');
+          data = element.serialize();
+          if (element.data('params')) data = data + "&" + element.data('params');
+        } else {
+          method = element.data('method');
+          url = rails.href(element);
+          data = element.data('params') || null;
+        }
+
+        options = {
+          type: method || 'GET', data: data, dataType: dataType,
+          // stopping the "ajax:beforeSend" event will cancel the ajax request
+          beforeSend: function(xhr, settings) {
+            if (settings.dataType === undefined) {
+              xhr.setRequestHeader('accept', '*/*;q=0.5, ' + settings.accepts.script);
+            }
+            return rails.fire(element, 'ajax:beforeSend', [xhr, settings]);
+          },
+          success: function(data, status, xhr) {
+            element.trigger('ajax:success', [data, status, xhr]);
+          },
+          complete: function(xhr, status) {
+            element.trigger('ajax:complete', [xhr, status]);
+          },
+          error: function(xhr, status, error) {
+            element.trigger('ajax:error', [xhr, status, error]);
+          },
+          xhrFields: {
+            withCredentials: withCredentials
+          },
+          crossDomain: crossDomain
+        };
+        // Only pass url to `ajax` options if not blank
+        if (url) { options.url = url; }
+
+        var jqxhr = rails.ajax(options);
+        element.trigger('ajax:send', jqxhr);
+        return jqxhr;
+      } else {
+        return false;
+      }
+    },
+
+    // Handles "data-method" on links such as:
+    // <a href="/users/5" data-method="delete" rel="nofollow" data-confirm="Are you sure?">Delete</a>
+    handleMethod: function(link) {
+      var href = rails.href(link),
+        method = link.data('method'),
+        target = link.attr('target'),
+        csrf_token = $('meta[name=csrf-token]').attr('content'),
+        csrf_param = $('meta[name=csrf-param]').attr('content'),
+        form = $('<form method="post" action="' + href + '"></form>'),
+        metadata_input = '<input name="_method" value="' + method + '" type="hidden" />';
+
+      if (csrf_param !== undefined && csrf_token !== undefined) {
+        metadata_input += '<input name="' + csrf_param + '" value="' + csrf_token + '" type="hidden" />';
+      }
+
+      if (target) { form.attr('target', target); }
+
+      form.hide().append(metadata_input).appendTo('body');
+      form.submit();
+    },
+
+    /* Disables form elements:
+      - Caches element value in 'ujs:enable-with' data store
+      - Replaces element text with value of 'data-disable-with' attribute
+      - Sets disabled property to true
+    */
+    disableFormElements: function(form) {
+      form.find(rails.disableSelector).each(function() {
+        var element = $(this), method = element.is('button') ? 'html' : 'val';
+        element.data('ujs:enable-with', element[method]());
+        element[method](element.data('disable-with'));
+        element.prop('disabled', true);
+      });
+    },
+
+    /* Re-enables disabled form elements:
+      - Replaces element text with cached value from 'ujs:enable-with' data store (created in `disableFormElements`)
+      - Sets disabled property to false
+    */
+    enableFormElements: function(form) {
+      form.find(rails.enableSelector).each(function() {
+        var element = $(this), method = element.is('button') ? 'html' : 'val';
+        if (element.data('ujs:enable-with')) element[method](element.data('ujs:enable-with'));
+        element.prop('disabled', false);
+      });
+    },
+
+   /* For 'data-confirm' attribute:
+      - Fires `confirm` event
+      - Shows the confirmation dialog
+      - Fires the `confirm:complete` event
+
+      Returns `true` if no function stops the chain and user chose yes; `false` otherwise.
+      Attaching a handler to the element's `confirm` event that returns a `falsy` value cancels the confirmation dialog.
+      Attaching a handler to the element's `confirm:complete` event that returns a `falsy` value makes this function
+      return false. The `confirm:complete` event is fired whether or not the user answered true or false to the dialog.
+   */
+    allowAction: function(element) {
+      var message = element.data('confirm'),
+          answer = false, callback;
+      if (!message) { return true; }
+
+      if (rails.fire(element, 'confirm')) {
+        answer = rails.confirm(message);
+        callback = rails.fire(element, 'confirm:complete', [answer]);
+      }
+      return answer && callback;
+    },
+
+    // Helper function which checks for blank inputs in a form that match the specified CSS selector
+    blankInputs: function(form, specifiedSelector, nonBlank) {
+      var inputs = $(), input, valueToCheck,
+          selector = specifiedSelector || 'input,textarea',
+          allInputs = form.find(selector);
+
+      allInputs.each(function() {
+        input = $(this);
+        valueToCheck = input.is(':checkbox,:radio') ? input.is(':checked') : input.val();
+        // If nonBlank and valueToCheck are both truthy, or nonBlank and valueToCheck are both falsey
+        if (!valueToCheck === !nonBlank) {
+
+          // Don't count unchecked required radio if other radio with same name is checked
+          if (input.is(':radio') && allInputs.filter('input:radio:checked[name="' + input.attr('name') + '"]').length) {
+            return true; // Skip to next input
+          }
+
+          inputs = inputs.add(input);
+        }
+      });
+      return inputs.length ? inputs : false;
+    },
+
+    // Helper function which checks for non-blank inputs in a form that match the specified CSS selector
+    nonBlankInputs: function(form, specifiedSelector) {
+      return rails.blankInputs(form, specifiedSelector, true); // true specifies nonBlank
+    },
+
+    // Helper function, needed to provide consistent behavior in IE
+    stopEverything: function(e) {
+      $(e.target).trigger('ujs:everythingStopped');
+      e.stopImmediatePropagation();
+      return false;
+    },
+
+    // find all the submit events directly bound to the form and
+    // manually invoke them. If anyone returns false then stop the loop
+    callFormSubmitBindings: function(form, event) {
+      var events = form.data('events'), continuePropagation = true;
+      if (events !== undefined && events['submit'] !== undefined) {
+        $.each(events['submit'], function(i, obj){
+          if (typeof obj.handler === 'function') return continuePropagation = obj.handler(event);
+        });
+      }
+      return continuePropagation;
+    },
+
+    //  replace element's html with the 'data-disable-with' after storing original html
+    //  and prevent clicking on it
+    disableElement: function(element) {
+      element.data('ujs:enable-with', element.html()); // store enabled state
+      element.html(element.data('disable-with')); // set to disabled state
+      element.bind('click.railsDisable', function(e) { // prevent further clicking
+        return rails.stopEverything(e);
+      });
+    },
+
+    // restore element to its original state which was disabled by 'disableElement' above
+    enableElement: function(element) {
+      if (element.data('ujs:enable-with') !== undefined) {
+        element.html(element.data('ujs:enable-with')); // set to old enabled state
+        // this should be element.removeData('ujs:enable-with')
+        // but, there is currently a bug in jquery which makes hyphenated data attributes not get removed
+        element.data('ujs:enable-with', false); // clean up cache
+      }
+      element.unbind('click.railsDisable'); // enable element
+    }
+
+  };
+
+  if (rails.fire($(document), 'rails:attachBindings')) {
+
+    $.ajaxPrefilter(function(options, originalOptions, xhr){ if ( !options.crossDomain ) { rails.CSRFProtection(xhr); }});
+
+    $(document).delegate(rails.linkDisableSelector, 'ajax:complete', function() {
+        rails.enableElement($(this));
+    });
+
+    $(document).delegate(rails.linkClickSelector, 'click.rails', function(e) {
+      var link = $(this), method = link.data('method'), data = link.data('params');
+      if (!rails.allowAction(link)) return rails.stopEverything(e);
+
+      if (link.is(rails.linkDisableSelector)) rails.disableElement(link);
+
+      if (link.data('remote') !== undefined) {
+        if ( (e.metaKey || e.ctrlKey) && (!method || method === 'GET') && !data ) { return true; }
+
+        var handleRemote = rails.handleRemote(link);
+        // response from rails.handleRemote() will either be false or a deferred object promise.
+        if (handleRemote === false) {
+          rails.enableElement(link);
+        } else {
+          handleRemote.error( function() { rails.enableElement(link); } );
+        }
+        return false;
+
+      } else if (link.data('method')) {
+        rails.handleMethod(link);
+        return false;
+      }
+    });
+
+    $(document).delegate(rails.inputChangeSelector, 'change.rails', function(e) {
+      var link = $(this);
+      if (!rails.allowAction(link)) return rails.stopEverything(e);
+
+      rails.handleRemote(link);
+      return false;
+    });
+
+    $(document).delegate(rails.formSubmitSelector, 'submit.rails', function(e) {
+      var form = $(this),
+        remote = form.data('remote') !== undefined,
+        blankRequiredInputs = rails.blankInputs(form, rails.requiredInputSelector),
+        nonBlankFileInputs = rails.nonBlankInputs(form, rails.fileInputSelector);
+
+      if (!rails.allowAction(form)) return rails.stopEverything(e);
+
+      // skip other logic when required values are missing or file upload is present
+      if (blankRequiredInputs && form.attr("novalidate") == undefined && rails.fire(form, 'ajax:aborted:required', [blankRequiredInputs])) {
+        return rails.stopEverything(e);
+      }
+
+      if (remote) {
+        if (nonBlankFileInputs) {
+          // slight timeout so that the submit button gets properly serialized
+          // (make it easy for event handler to serialize form without disabled values)
+          setTimeout(function(){ rails.disableFormElements(form); }, 13);
+          var aborted = rails.fire(form, 'ajax:aborted:file', [nonBlankFileInputs]);
+
+          // re-enable form elements if event bindings return false (canceling normal form submission)
+          if (!aborted) { setTimeout(function(){ rails.enableFormElements(form); }, 13); }
+
+          return aborted;
+        }
+
+        // If browser does not support submit bubbling, then this live-binding will be called before direct
+        // bindings. Therefore, we should directly call any direct bindings before remotely submitting form.
+        if (!$.support.submitBubbles && $().jquery < '1.7' && rails.callFormSubmitBindings(form, e) === false) return rails.stopEverything(e);
+
+        rails.handleRemote(form);
+        return false;
+
+      } else {
+        // slight timeout so that the submit button gets properly serialized
+        setTimeout(function(){ rails.disableFormElements(form); }, 13);
+      }
+    });
+
+    $(document).delegate(rails.formInputClickSelector, 'click.rails', function(event) {
+      var button = $(this);
+
+      if (!rails.allowAction(button)) return rails.stopEverything(event);
+
+      // register the pressed submit button
+      var name = button.attr('name'),
+        data = name ? {name:name, value:button.val()} : null;
+
+      button.closest('form').data('ujs:submit-button', data);
+    });
+
+    $(document).delegate(rails.formSubmitSelector, 'ajax:beforeSend.rails', function(event) {
+      if (this == event.target) rails.disableFormElements($(this));
+    });
+
+    $(document).delegate(rails.formSubmitSelector, 'ajax:complete.rails', function(event) {
+      if (this == event.target) rails.enableFormElements($(this));
+    });
+
+    $(function(){
+      // making sure that all forms have actual up-to-date token(cached forms contain old one)
+      csrf_token = $('meta[name=csrf-token]').attr('content');
+      csrf_param = $('meta[name=csrf-param]').attr('content');
+      $('form input[name="' + csrf_param + '"]').val(csrf_token);
+    });
+  }
+
+})( jQuery );
+/*
+ * jQuery Tools 1.2.5 - The missing UI library for the Web
+ * 
+ * [jquery, toolbox.flashembed, toolbox.history, toolbox.expose, toolbox.mousewheel, tabs, tabs.slideshow, tooltip, tooltip.slide, tooltip.dynamic, scrollable, scrollable.autoscroll, scrollable.navigator, overlay, overlay.apple, dateinput, rangeinput, validator]
+ * 
+ * NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
+ * 
+ * http://flowplayer.org/tools/
+ * 
+ * jQuery JavaScript Library v1.4.2
+ * http://jquery.com/
+ *
+ * Copyright 2010, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://docs.jquery.com/License
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2010, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ * 
+ * -----
+ * 
+ 
+
+ * jquery.event.wheel.js - rev 1 
+ * Copyright (c) 2008, Three Dub Media (http://threedubmedia.com)
+ * Liscensed under the MIT License (MIT-LICENSE.txt)
+ * http://www.opensource.org/licenses/mit-license.php
+ * Created: 2008-07-01 | Updated: 2008-07-14
+ * 
+ * -----
+ * 
+ * File generated: Wed Sep 22 06:12:53 GMT 2010
+ */
+
+(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?
+e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=
+j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,
+"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=
+true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,
+Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&
+(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,
+a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b===
+"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,
+function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||
+c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",
+L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,
+"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
+a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],
+d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===
+a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&
+!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=
+true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
+var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,
+parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=
+false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=
+s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,
+applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];
+else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,
+a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===
+w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,
+cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",
+i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ",
+" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=
+this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=
+e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=
+c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
+a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,
+function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");
+k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),
+C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=
+null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=
+e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&
+f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;
+if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
+fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
+d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,
+"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=
+a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,
+isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit=
+{setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};
+if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",
+e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,
+"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,
+d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&
+!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},
+toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,
+u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),
+function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];
+if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
+e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();
+t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||
+g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];
+for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
+1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
+CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},
+relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=
+l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];
+h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},
+CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,
+g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},
+text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},
+setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=
+h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=
+m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m===
+"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,
+h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||
+!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=
+h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&
+q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";
+if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();
+(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:
+function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,
+gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;
+c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j=
+{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a===
+"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",
+d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?
+a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===
+1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?
+a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
+c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
+wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
+prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
+this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
+return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,
+""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&
+this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||
+u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===
+1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);
+return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",
+""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=
+c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?
+c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=
+function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=
+Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,
+"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=
+a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=
+a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!==
+"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},
+serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
+function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,
+global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&
+e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?
+"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===
+false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=
+false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",
+c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||
+d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);
+g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===
+1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b===
+"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;
+if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");
+this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],
+"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},
+animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=
+j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);
+this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration===
+"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||
+c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;
+this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=
+this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,
+e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||
+c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement?
+function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=
+this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;
+k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&
+f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
+a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);
+c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,
+d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
+f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":
+"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
+e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
+(function(){function f(a,b){if(b)for(var c in b)if(b.hasOwnProperty(c))a[c]=b[c];return a}function l(a,b){var c=[];for(var d in a)if(a.hasOwnProperty(d))c[d]=b(a[d]);return c}function m(a,b,c){if(e.isSupported(b.version))a.innerHTML=e.getHTML(b,c);else if(b.expressInstall&&e.isSupported([6,65]))a.innerHTML=e.getHTML(f(b,{src:b.expressInstall}),{MMredirectURL:location.href,MMplayerType:"PlugIn",MMdoctitle:document.title});else{if(!a.innerHTML.replace(/\s/g,"")){a.innerHTML="<h2>Flash version "+b.version+
+" or greater is required</h2><h3>"+(g[0]>0?"Your version is "+g:"You have no flash plugin installed")+"</h3>"+(a.tagName=="A"?"<p>Click here to download latest version</p>":"<p>Download latest version from <a href='"+k+"'>here</a></p>");if(a.tagName=="A")a.onclick=function(){location.href=k}}if(b.onFail){var d=b.onFail.call(this);if(typeof d=="string")a.innerHTML=d}}if(i)window[b.id]=document.getElementById(b.id);f(this,{getRoot:function(){return a},getOptions:function(){return b},getConf:function(){return c},
+getApi:function(){return a.firstChild}})}var i=document.all,k="http://www.adobe.com/go/getflashplayer",n=typeof jQuery=="function",o=/(\d+)[^\d]+(\d+)[^\d]*(\d*)/,j={width:"100%",height:"100%",id:"_"+(""+Math.random()).slice(9),allowfullscreen:true,allowscriptaccess:"always",quality:"high",version:[3,0],onFail:null,expressInstall:null,w3c:false,cachebusting:false};window.attachEvent&&window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){}});
+window.flashembed=function(a,b,c){if(typeof a=="string")a=document.getElementById(a.replace("#",""));if(a){if(typeof b=="string")b={src:b};return new m(a,f(f({},j),b),c)}};var e=f(window.flashembed,{conf:j,getVersion:function(){var a,b;try{b=navigator.plugins["Shockwave Flash"].description.slice(16)}catch(c){try{b=(a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"))&&a.GetVariable("$version")}catch(d){try{b=(a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"))&&a.GetVariable("$version")}catch(h){}}}return(b=
+o.exec(b))?[b[1],b[3]]:[0,0]},asString:function(a){if(a===null||a===undefined)return null;var b=typeof a;if(b=="object"&&a.push)b="array";switch(b){case "string":a=a.replace(new RegExp('(["\\\\])',"g"),"\\$1");a=a.replace(/^\s?(\d+\.?\d+)%/,"$1pct");return'"'+a+'"';case "array":return"["+l(a,function(d){return e.asString(d)}).join(",")+"]";case "function":return'"function()"';case "object":b=[];for(var c in a)a.hasOwnProperty(c)&&b.push('"'+c+'":'+e.asString(a[c]));return"{"+b.join(",")+"}"}return String(a).replace(/\s/g,
+" ").replace(/\'/g,'"')},getHTML:function(a,b){a=f({},a);var c='<object width="'+a.width+'" height="'+a.height+'" id="'+a.id+'" name="'+a.id+'"';if(a.cachebusting)a.src+=(a.src.indexOf("?")!=-1?"&":"?")+Math.random();c+=a.w3c||!i?' data="'+a.src+'" type="application/x-shockwave-flash"':' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';c+=">";if(a.w3c||i)c+='<param name="movie" value="'+a.src+'" />';a.width=a.height=a.id=a.w3c=a.src=null;a.onFail=a.version=a.expressInstall=null;for(var d in a)if(a[d])c+=
+'<param name="'+d+'" value="'+a[d]+'" />';a="";if(b){for(var h in b)if(b[h]){d=b[h];a+=h+"="+(/function|object/.test(typeof d)?e.asString(d):d)+"&"}a=a.slice(0,-1);c+='<param name="flashvars" value=\''+a+"' />"}c+="</object>";return c},isSupported:function(a){return g[0]>a[0]||g[0]==a[0]&&g[1]>=a[1]}}),g=e.getVersion();if(n){jQuery.tools=jQuery.tools||{version:"1.2.5"};jQuery.tools.flashembed={conf:j};jQuery.fn.flashembed=function(a,b){return this.each(function(){$(this).data("flashembed",flashembed(this,
+a,b))})}}})();
+(function(b){function h(c){if(c){var a=d.contentWindow.document;a.open().close();a.location.hash=c}}var g,d,f,i;b.tools=b.tools||{version:"1.2.5"};b.tools.history={init:function(c){if(!i){if(b.browser.msie&&b.browser.version<"8"){if(!d){d=b("<iframe/>").attr("src","javascript:false;").hide().get(0);b("body").append(d);setInterval(function(){var a=d.contentWindow.document;a=a.location.hash;g!==a&&b.event.trigger("hash",a)},100);h(location.hash||"#")}}else setInterval(function(){var a=location.hash;
+a!==g&&b.event.trigger("hash",a)},100);f=!f?c:f.add(c);c.click(function(a){var e=b(this).attr("href");d&&h(e);if(e.slice(0,1)!="#"){location.href="#"+e;return a.preventDefault()}});i=true}}};b(window).bind("hash",function(c,a){a?f.filter(function(){var e=b(this).attr("href");return e==a||e==a.replace("#","")}).trigger("history",[a]):f.eq(0).trigger("history",[a]);g=a});b.fn.history=function(c){b.tools.history.init(this);return this.bind("history",c)}})(jQuery);
+(function(b){function k(){if(b.browser.msie){var a=b(document).height(),d=b(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,a-d<20?d:a]}return[b(document).width(),b(document).height()]}function h(a){if(a)return a.call(b.mask)}b.tools=b.tools||{version:"1.2.5"};var l;l=b.tools.expose={conf:{maskId:"exposeMask",loadSpeed:"slow",closeSpeed:"fast",closeOnClick:true,closeOnEsc:true,zIndex:9998,opacity:0.8,startOpacity:0,color:"#fff",onLoad:null,
+onClose:null}};var c,i,e,g,j;b.mask={load:function(a,d){if(e)return this;if(typeof a=="string")a={color:a};a=a||g;g=a=b.extend(b.extend({},l.conf),a);c=b("#"+a.maskId);if(!c.length){c=b("<div/>").attr("id",a.maskId);b("body").append(c)}var m=k();c.css({position:"absolute",top:0,left:0,width:m[0],height:m[1],display:"none",opacity:a.startOpacity,zIndex:a.zIndex});a.color&&c.css("backgroundColor",a.color);if(h(a.onBeforeLoad)===false)return this;a.closeOnEsc&&b(document).bind("keydown.mask",function(f){f.keyCode==
+27&&b.mask.close(f)});a.closeOnClick&&c.bind("click.mask",function(f){b.mask.close(f)});b(window).bind("resize.mask",function(){b.mask.fit()});if(d&&d.length){j=d.eq(0).css("zIndex");b.each(d,function(){var f=b(this);/relative|absolute|fixed/i.test(f.css("position"))||f.css("position","relative")});i=d.css({zIndex:Math.max(a.zIndex+1,j=="auto"?0:j)})}c.css({display:"block"}).fadeTo(a.loadSpeed,a.opacity,function(){b.mask.fit();h(a.onLoad);e="full"});e=true;return this},close:function(){if(e){if(h(g.onBeforeClose)===
+false)return this;c.fadeOut(g.closeSpeed,function(){h(g.onClose);i&&i.css({zIndex:j});e=false});b(document).unbind("keydown.mask");c.unbind("click.mask");b(window).unbind("resize.mask")}return this},fit:function(){if(e){var a=k();c.css({width:a[0],height:a[1]})}},getMask:function(){return c},isLoaded:function(a){return a?e=="full":e},getConf:function(){return g},getExposed:function(){return i}};b.fn.mask=function(a){b.mask.load(a);return this};b.fn.expose=function(a){b.mask.load(a,this);return this}})(jQuery);
+(function(b){function c(a){switch(a.type){case "mousemove":return b.extend(a.data,{clientX:a.clientX,clientY:a.clientY,pageX:a.pageX,pageY:a.pageY});case "DOMMouseScroll":b.extend(a,a.data);a.delta=-a.detail/3;break;case "mousewheel":a.delta=a.wheelDelta/120;break}a.type="wheel";return b.event.handle.call(this,a,a.delta)}b.fn.mousewheel=function(a){return this[a?"bind":"trigger"]("wheel",a)};b.event.special.wheel={setup:function(){b.event.add(this,d,c,{})},teardown:function(){b.event.remove(this,
+d,c)}};var d=!b.browser.mozilla?"mousewheel":"DOMMouseScroll"+(b.browser.version<"1.9"?" mousemove":"")})(jQuery);
+(function(c){function p(d,b,a){var e=this,l=d.add(this),h=d.find(a.tabs),i=b.jquery?b:d.children(b),j;h.length||(h=d.children());i.length||(i=d.parent().find(b));i.length||(i=c(b));c.extend(this,{click:function(f,g){var k=h.eq(f);if(typeof f=="string"&&f.replace("#","")){k=h.filter("[href*="+f.replace("#","")+"]");f=Math.max(h.index(k),0)}if(a.rotate){var n=h.length-1;if(f<0)return e.click(n,g);if(f>n)return e.click(0,g)}if(!k.length){if(j>=0)return e;f=a.initialIndex;k=h.eq(f)}if(f===j)return e;
+g=g||c.Event();g.type="onBeforeClick";l.trigger(g,[f]);if(!g.isDefaultPrevented()){o[a.effect].call(e,f,function(){g.type="onClick";l.trigger(g,[f])});j=f;h.removeClass(a.current);k.addClass(a.current);return e}},getConf:function(){return a},getTabs:function(){return h},getPanes:function(){return i},getCurrentPane:function(){return i.eq(j)},getCurrentTab:function(){return h.eq(j)},getIndex:function(){return j},next:function(){return e.click(j+1)},prev:function(){return e.click(j-1)},destroy:function(){h.unbind(a.event).removeClass(a.current);
+i.find("a[href^=#]").unbind("click.T");return e}});c.each("onBeforeClick,onClick".split(","),function(f,g){c.isFunction(a[g])&&c(e).bind(g,a[g]);e[g]=function(k){k&&c(e).bind(g,k);return e}});if(a.history&&c.fn.history){c.tools.history.init(h);a.event="history"}h.each(function(f){c(this).bind(a.event,function(g){e.click(f,g);return g.preventDefault()})});i.find("a[href^=#]").bind("click.T",function(f){e.click(c(this).attr("href"),f)});if(location.hash&&a.tabs=="a"&&d.find("[href="+location.hash+"]").length)e.click(location.hash);
+else if(a.initialIndex===0||a.initialIndex>0)e.click(a.initialIndex)}c.tools=c.tools||{version:"1.2.5"};c.tools.tabs={conf:{tabs:"a",current:"current",onBeforeClick:null,onClick:null,effect:"default",initialIndex:0,event:"click",rotate:false,history:false},addEffect:function(d,b){o[d]=b}};var o={"default":function(d,b){this.getPanes().hide().eq(d).show();b.call()},fade:function(d,b){var a=this.getConf(),e=a.fadeOutSpeed,l=this.getPanes();e?l.fadeOut(e):l.hide();l.eq(d).fadeIn(a.fadeInSpeed,b)},slide:function(d,
+b){this.getPanes().slideUp(200);this.getPanes().eq(d).slideDown(400,b)},ajax:function(d,b){this.getPanes().eq(0).load(this.getTabs().eq(d).attr("href"),b)}},m;c.tools.tabs.addEffect("horizontal",function(d,b){m||(m=this.getPanes().eq(0).width());this.getCurrentPane().animate({width:0},function(){c(this).hide()});this.getPanes().eq(d).animate({width:m},function(){c(this).show();b.call()})});c.fn.tabs=function(d,b){var a=this.data("tabs");if(a){a.destroy();this.removeData("tabs")}if(c.isFunction(b))b=
+{onBeforeClick:b};b=c.extend({},c.tools.tabs.conf,b);this.each(function(){a=new p(c(this),d,b);c(this).data("tabs",a)});return b.api?a:this}})(jQuery);
+(function(c){function p(g,a){function m(f){var e=c(f);return e.length<2?e:g.parent().find(f)}var b=this,i=g.add(this),d=g.data("tabs"),h,j=true,n=m(a.next).click(function(){d.next()}),k=m(a.prev).click(function(){d.prev()});c.extend(b,{getTabs:function(){return d},getConf:function(){return a},play:function(){if(h)return b;var f=c.Event("onBeforePlay");i.trigger(f);if(f.isDefaultPrevented())return b;h=setInterval(d.next,a.interval);j=false;i.trigger("onPlay");return b},pause:function(){if(!h)return b;
+var f=c.Event("onBeforePause");i.trigger(f);if(f.isDefaultPrevented())return b;h=clearInterval(h);i.trigger("onPause");return b},stop:function(){b.pause();j=true}});c.each("onBeforePlay,onPlay,onBeforePause,onPause".split(","),function(f,e){c.isFunction(a[e])&&c(b).bind(e,a[e]);b[e]=function(q){return c(b).bind(e,q)}});a.autopause&&d.getTabs().add(n).add(k).add(d.getPanes()).hover(b.pause,function(){j||b.play()});a.autoplay&&b.play();a.clickable&&d.getPanes().click(function(){d.next()});if(!d.getConf().rotate){var l=
+a.disabledClass;d.getIndex()||k.addClass(l);d.onBeforeClick(function(f,e){k.toggleClass(l,!e);n.toggleClass(l,e==d.getTabs().length-1)})}}var o;o=c.tools.tabs.slideshow={conf:{next:".forward",prev:".backward",disabledClass:"disabled",autoplay:false,autopause:true,interval:3E3,clickable:true,api:false}};c.fn.slideshow=function(g){var a=this.data("slideshow");if(a)return a;g=c.extend({},o.conf,g);this.each(function(){a=new p(c(this),g);c(this).data("slideshow",a)});return g.api?a:this}})(jQuery);
+(function(f){function p(a,b,c){var h=c.relative?a.position().top:a.offset().top,d=c.relative?a.position().left:a.offset().left,i=c.position[0];h-=b.outerHeight()-c.offset[0];d+=a.outerWidth()+c.offset[1];if(/iPad/i.test(navigator.userAgent))h-=f(window).scrollTop();var j=b.outerHeight()+a.outerHeight();if(i=="center")h+=j/2;if(i=="bottom")h+=j;i=c.position[1];a=b.outerWidth()+a.outerWidth();if(i=="center")d-=a/2;if(i=="left")d-=a;return{top:h,left:d}}function u(a,b){var c=this,h=a.add(c),d,i=0,j=
+0,m=a.attr("title"),q=a.attr("data-tooltip"),r=o[b.effect],l,s=a.is(":input"),v=s&&a.is(":checkbox, :radio, select, :button, :submit"),t=a.attr("type"),k=b.events[t]||b.events[s?v?"widget":"input":"def"];if(!r)throw'Nonexistent effect "'+b.effect+'"';k=k.split(/,\s*/);if(k.length!=2)throw"Tooltip: bad events configuration for "+t;a.bind(k[0],function(e){clearTimeout(i);if(b.predelay)j=setTimeout(function(){c.show(e)},b.predelay);else c.show(e)}).bind(k[1],function(e){clearTimeout(j);if(b.delay)i=
+setTimeout(function(){c.hide(e)},b.delay);else c.hide(e)});if(m&&b.cancelDefault){a.removeAttr("title");a.data("title",m)}f.extend(c,{show:function(e){if(!d){if(q)d=f(q);else if(b.tip)d=f(b.tip).eq(0);else if(m)d=f(b.layout).addClass(b.tipClass).appendTo(document.body).hide().append(m);else{d=a.next();d.length||(d=a.parent().next())}if(!d.length)throw"Cannot find tooltip for "+a;}if(c.isShown())return c;d.stop(true,true);var g=p(a,d,b);b.tip&&d.html(a.data("title"));e=e||f.Event();e.type="onBeforeShow";
+h.trigger(e,[g]);if(e.isDefaultPrevented())return c;g=p(a,d,b);d.css({position:"absolute",top:g.top,left:g.left});l=true;r[0].call(c,function(){e.type="onShow";l="full";h.trigger(e)});g=b.events.tooltip.split(/,\s*/);if(!d.data("__set")){d.bind(g[0],function(){clearTimeout(i);clearTimeout(j)});g[1]&&!a.is("input:not(:checkbox, :radio), textarea")&&d.bind(g[1],function(n){n.relatedTarget!=a[0]&&a.trigger(k[1].split(" ")[0])});d.data("__set",true)}return c},hide:function(e){if(!d||!c.isShown())return c;
+e=e||f.Event();e.type="onBeforeHide";h.trigger(e);if(!e.isDefaultPrevented()){l=false;o[b.effect][1].call(c,function(){e.type="onHide";h.trigger(e)});return c}},isShown:function(e){return e?l=="full":l},getConf:function(){return b},getTip:function(){return d},getTrigger:function(){return a}});f.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(e,g){f.isFunction(b[g])&&f(c).bind(g,b[g]);c[g]=function(n){n&&f(c).bind(g,n);return c}})}f.tools=f.tools||{version:"1.2.5"};f.tools.tooltip=
+{conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,position:["top","center"],offset:[0,0],relative:false,cancelDefault:true,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},layout:"<div/>",tipClass:"tooltip"},addEffect:function(a,b,c){o[a]=[b,c]}};var o={toggle:[function(a){var b=this.getConf(),c=this.getTip();b=b.opacity;b<1&&c.css({opacity:b});c.show();a.call()},function(a){this.getTip().hide();
+a.call()}],fade:[function(a){var b=this.getConf();this.getTip().fadeTo(b.fadeInSpeed,b.opacity,a)},function(a){this.getTip().fadeOut(this.getConf().fadeOutSpeed,a)}]};f.fn.tooltip=function(a){var b=this.data("tooltip");if(b)return b;a=f.extend(true,{},f.tools.tooltip.conf,a);if(typeof a.position=="string")a.position=a.position.split(/,?\s/);this.each(function(){b=new u(f(this),a);f(this).data("tooltip",b)});return a.api?b:this}})(jQuery);
+(function(d){var i=d.tools.tooltip;d.extend(i.conf,{direction:"up",bounce:false,slideOffset:10,slideInSpeed:200,slideOutSpeed:200,slideFade:!d.browser.msie});var e={up:["-","top"],down:["+","top"],left:["-","left"],right:["+","left"]};i.addEffect("slide",function(g){var a=this.getConf(),f=this.getTip(),b=a.slideFade?{opacity:a.opacity}:{},c=e[a.direction]||e.up;b[c[1]]=c[0]+"="+a.slideOffset;a.slideFade&&f.css({opacity:0});f.show().animate(b,a.slideInSpeed,g)},function(g){var a=this.getConf(),f=a.slideOffset,
+b=a.slideFade?{opacity:0}:{},c=e[a.direction]||e.up,h=""+c[0];if(a.bounce)h=h=="+"?"-":"+";b[c[1]]=h+"="+f;this.getTip().animate(b,a.slideOutSpeed,function(){d(this).hide();g.call()})})})(jQuery);
+(function(g){function j(a){var c=g(window),d=c.width()+c.scrollLeft(),h=c.height()+c.scrollTop();return[a.offset().top<=c.scrollTop(),d<=a.offset().left+a.width(),h<=a.offset().top+a.height(),c.scrollLeft()>=a.offset().left]}function k(a){for(var c=a.length;c--;)if(a[c])return false;return true}var i=g.tools.tooltip;i.dynamic={conf:{classNames:"top right bottom left"}};g.fn.dynamic=function(a){if(typeof a=="number")a={speed:a};a=g.extend({},i.dynamic.conf,a);var c=a.classNames.split(/\s/),d;this.each(function(){var h=
+g(this).tooltip().onBeforeShow(function(e,f){e=this.getTip();var b=this.getConf();d||(d=[b.position[0],b.position[1],b.offset[0],b.offset[1],g.extend({},b)]);g.extend(b,d[4]);b.position=[d[0],d[1]];b.offset=[d[2],d[3]];e.css({visibility:"hidden",position:"absolute",top:f.top,left:f.left}).show();f=j(e);if(!k(f)){if(f[2]){g.extend(b,a.top);b.position[0]="top";e.addClass(c[0])}if(f[3]){g.extend(b,a.right);b.position[1]="right";e.addClass(c[1])}if(f[0]){g.extend(b,a.bottom);b.position[0]="bottom";e.addClass(c[2])}if(f[1]){g.extend(b,
+a.left);b.position[1]="left";e.addClass(c[3])}if(f[0]||f[2])b.offset[0]*=-1;if(f[1]||f[3])b.offset[1]*=-1}e.css({visibility:"visible"}).hide()});h.onBeforeShow(function(){var e=this.getConf();this.getTip();setTimeout(function(){e.position=[d[0],d[1]];e.offset=[d[2],d[3]]},0)});h.onHide(function(){var e=this.getTip();e.removeClass(a.classNames)});ret=h});return a.api?ret:this}})(jQuery);
+(function(e){function p(f,c){var b=e(c);return b.length<2?b:f.parent().find(c)}function u(f,c){var b=this,n=f.add(b),g=f.children(),l=0,j=c.vertical;k||(k=b);if(g.length>1)g=e(c.items,f);e.extend(b,{getConf:function(){return c},getIndex:function(){return l},getSize:function(){return b.getItems().size()},getNaviButtons:function(){return o.add(q)},getRoot:function(){return f},getItemWrap:function(){return g},getItems:function(){return g.children(c.item).not("."+c.clonedClass)},move:function(a,d){return b.seekTo(l+
+a,d)},next:function(a){return b.move(1,a)},prev:function(a){return b.move(-1,a)},begin:function(a){return b.seekTo(0,a)},end:function(a){return b.seekTo(b.getSize()-1,a)},focus:function(){return k=b},addItem:function(a){a=e(a);if(c.circular){g.children("."+c.clonedClass+":last").before(a);g.children("."+c.clonedClass+":first").replaceWith(a.clone().addClass(c.clonedClass))}else g.append(a);n.trigger("onAddItem",[a]);return b},seekTo:function(a,d,h){a.jquery||(a*=1);if(c.circular&&a===0&&l==-1&&d!==
+0)return b;if(!c.circular&&a<0||a>b.getSize()||a<-1)return b;var i=a;if(a.jquery)a=b.getItems().index(a);else i=b.getItems().eq(a);var r=e.Event("onBeforeSeek");if(!h){n.trigger(r,[a,d]);if(r.isDefaultPrevented()||!i.length)return b}i=j?{top:-i.position().top}:{left:-i.position().left};l=a;k=b;if(d===undefined)d=c.speed;g.animate(i,d,c.easing,h||function(){n.trigger("onSeek",[a])});return b}});e.each(["onBeforeSeek","onSeek","onAddItem"],function(a,d){e.isFunction(c[d])&&e(b).bind(d,c[d]);b[d]=function(h){h&&
+e(b).bind(d,h);return b}});if(c.circular){var s=b.getItems().slice(-1).clone().prependTo(g),t=b.getItems().eq(1).clone().appendTo(g);s.add(t).addClass(c.clonedClass);b.onBeforeSeek(function(a,d,h){if(!a.isDefaultPrevented())if(d==-1){b.seekTo(s,h,function(){b.end(0)});return a.preventDefault()}else d==b.getSize()&&b.seekTo(t,h,function(){b.begin(0)})});b.seekTo(0,0,function(){})}var o=p(f,c.prev).click(function(){b.prev()}),q=p(f,c.next).click(function(){b.next()});if(!c.circular&&b.getSize()>1){b.onBeforeSeek(function(a,
+d){setTimeout(function(){if(!a.isDefaultPrevented()){o.toggleClass(c.disabledClass,d<=0);q.toggleClass(c.disabledClass,d>=b.getSize()-1)}},1)});c.initialIndex||o.addClass(c.disabledClass)}c.mousewheel&&e.fn.mousewheel&&f.mousewheel(function(a,d){if(c.mousewheel){b.move(d<0?1:-1,c.wheelSpeed||50);return false}});if(c.touch){var m={};g[0].ontouchstart=function(a){a=a.touches[0];m.x=a.clientX;m.y=a.clientY};g[0].ontouchmove=function(a){if(a.touches.length==1&&!g.is(":animated")){var d=a.touches[0],h=
+m.x-d.clientX;d=m.y-d.clientY;b[j&&d>0||!j&&h>0?"next":"prev"]();a.preventDefault()}}}c.keyboard&&e(document).bind("keydown.scrollable",function(a){if(!(!c.keyboard||a.altKey||a.ctrlKey||e(a.target).is(":input")))if(!(c.keyboard!="static"&&k!=b)){var d=a.keyCode;if(j&&(d==38||d==40)){b.move(d==38?-1:1);return a.preventDefault()}if(!j&&(d==37||d==39)){b.move(d==37?-1:1);return a.preventDefault()}}});c.initialIndex&&b.seekTo(c.initialIndex,0,function(){})}e.tools=e.tools||{version:"1.2.5"};e.tools.scrollable=
+{conf:{activeClass:"active",circular:false,clonedClass:"cloned",disabledClass:"disabled",easing:"swing",initialIndex:0,item:null,items:".items",keyboard:true,mousewheel:false,next:".next",prev:".prev",speed:400,vertical:false,touch:true,wheelSpeed:0}};var k;e.fn.scrollable=function(f){var c=this.data("scrollable");if(c)return c;f=e.extend({},e.tools.scrollable.conf,f);this.each(function(){c=new u(e(this),f);e(this).data("scrollable",c)});return f.api?c:this}})(jQuery);
+(function(b){var f=b.tools.scrollable;f.autoscroll={conf:{autoplay:true,interval:3E3,autopause:true}};b.fn.autoscroll=function(c){if(typeof c=="number")c={interval:c};var d=b.extend({},f.autoscroll.conf,c),g;this.each(function(){var a=b(this).data("scrollable");if(a)g=a;var e,h=true;a.play=function(){if(!e){h=false;e=setInterval(function(){a.next()},d.interval)}};a.pause=function(){e=clearInterval(e)};a.stop=function(){a.pause();h=true};d.autopause&&a.getRoot().add(a.getNaviButtons()).hover(a.pause,
+a.play);d.autoplay&&a.play()});return d.api?g:this}})(jQuery);
+(function(d){function p(b,g){var h=d(g);return h.length<2?h:b.parent().find(g)}var m=d.tools.scrollable;m.navigator={conf:{navi:".navi",naviItem:null,activeClass:"active",indexed:false,idPrefix:null,history:false}};d.fn.navigator=function(b){if(typeof b=="string")b={navi:b};b=d.extend({},m.navigator.conf,b);var g;this.each(function(){function h(a,c,i){e.seekTo(c);if(j){if(location.hash)location.hash=a.attr("href").replace("#","")}else return i.preventDefault()}function f(){return k.find(b.naviItem||
+"> *")}function n(a){var c=d("<"+(b.naviItem||"a")+"/>").click(function(i){h(d(this),a,i)}).attr("href","#"+a);a===0&&c.addClass(l);b.indexed&&c.text(a+1);b.idPrefix&&c.attr("id",b.idPrefix+a);return c.appendTo(k)}function o(a,c){a=f().eq(c.replace("#",""));a.length||(a=f().filter("[href="+c+"]"));a.click()}var e=d(this).data("scrollable"),k=b.navi.jquery?b.navi:p(e.getRoot(),b.navi),q=e.getNaviButtons(),l=b.activeClass,j=b.history&&d.fn.history;if(e)g=e;e.getNaviButtons=function(){return q.add(k)};
+f().length?f().each(function(a){d(this).click(function(c){h(d(this),a,c)})}):d.each(e.getItems(),function(a){n(a)});e.onBeforeSeek(function(a,c){setTimeout(function(){if(!a.isDefaultPrevented()){var i=f().eq(c);!a.isDefaultPrevented()&&i.length&&f().removeClass(l).eq(c).addClass(l)}},1)});e.onAddItem(function(a,c){c=n(e.getItems().index(c));j&&c.history(o)});j&&f().history(o)});return b.api?g:this}})(jQuery);
+(function(a){function t(d,b){var c=this,j=d.add(c),o=a(window),k,f,m,g=a.tools.expose&&(b.mask||b.expose),n=Math.random().toString().slice(10);if(g){if(typeof g=="string")g={color:g};g.closeOnClick=g.closeOnEsc=false}var p=b.target||d.attr("rel");f=p?a(p):d;if(!f.length)throw"Could not find Overlay: "+p;d&&d.index(f)==-1&&d.click(function(e){c.load(e);return e.preventDefault()});a.extend(c,{load:function(e){if(c.isOpened())return c;var h=q[b.effect];if(!h)throw'Overlay: cannot find effect : "'+b.effect+
+'"';b.oneInstance&&a.each(s,function(){this.close(e)});e=e||a.Event();e.type="onBeforeLoad";j.trigger(e);if(e.isDefaultPrevented())return c;m=true;g&&a(f).expose(g);var i=b.top,r=b.left,u=f.outerWidth({margin:true}),v=f.outerHeight({margin:true});if(typeof i=="string")i=i=="center"?Math.max((o.height()-v)/2,0):parseInt(i,10)/100*o.height();if(r=="center")r=Math.max((o.width()-u)/2,0);h[0].call(c,{top:i,left:r},function(){if(m){e.type="onLoad";j.trigger(e)}});g&&b.closeOnClick&&a.mask.getMask().one("click",
+c.close);b.closeOnClick&&a(document).bind("click."+n,function(l){a(l.target).parents(f).length||c.close(l)});b.closeOnEsc&&a(document).bind("keydown."+n,function(l){l.keyCode==27&&c.close(l)});return c},close:function(e){if(!c.isOpened())return c;e=e||a.Event();e.type="onBeforeClose";j.trigger(e);if(!e.isDefaultPrevented()){m=false;q[b.effect][1].call(c,function(){e.type="onClose";j.trigger(e)});a(document).unbind("click."+n).unbind("keydown."+n);g&&a.mask.close();return c}},getOverlay:function(){return f},
+getTrigger:function(){return d},getClosers:function(){return k},isOpened:function(){return m},getConf:function(){return b}});a.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(e,h){a.isFunction(b[h])&&a(c).bind(h,b[h]);c[h]=function(i){i&&a(c).bind(h,i);return c}});k=f.find(b.close||".close");if(!k.length&&!b.close){k=a('<a class="close"></a>');f.prepend(k)}k.click(function(e){c.close(e)});b.load&&c.load()}a.tools=a.tools||{version:"1.2.5"};a.tools.overlay={addEffect:function(d,
+b,c){q[d]=[b,c]},conf:{close:null,closeOnClick:true,closeOnEsc:true,closeSpeed:"fast",effect:"default",fixed:!a.browser.msie||a.browser.version>6,left:"center",load:false,mask:null,oneInstance:true,speed:"normal",target:null,top:"10%"}};var s=[],q={};a.tools.overlay.addEffect("default",function(d,b){var c=this.getConf(),j=a(window);if(!c.fixed){d.top+=j.scrollTop();d.left+=j.scrollLeft()}d.position=c.fixed?"fixed":"absolute";this.getOverlay().css(d).fadeIn(c.speed,b)},function(d){this.getOverlay().fadeOut(this.getConf().closeSpeed,
+d)});a.fn.overlay=function(d){var b=this.data("overlay");if(b)return b;if(a.isFunction(d))d={onBeforeLoad:d};d=a.extend(true,{},a.tools.overlay.conf,d);this.each(function(){b=new t(a(this),d);s.push(b);a(this).data("overlay",b)});return d.api?b:this}})(jQuery);
+(function(h){function k(d){var e=d.offset();return{top:e.top+d.height()/2,left:e.left+d.width()/2}}var l=h.tools.overlay,f=h(window);h.extend(l.conf,{start:{top:null,left:null},fadeInSpeed:"fast",zIndex:9999});function o(d,e){var a=this.getOverlay(),c=this.getConf(),g=this.getTrigger(),p=this,m=a.outerWidth({margin:true}),b=a.data("img"),n=c.fixed?"fixed":"absolute";if(!b){b=a.css("backgroundImage");if(!b)throw"background-image CSS property not set for overlay";b=b.slice(b.indexOf("(")+1,b.indexOf(")")).replace(/\"/g,
+"");a.css("backgroundImage","none");b=h('<img src="'+b+'"/>');b.css({border:0,display:"none"}).width(m);h("body").append(b);a.data("img",b)}var i=c.start.top||Math.round(f.height()/2),j=c.start.left||Math.round(f.width()/2);if(g){g=k(g);i=g.top;j=g.left}if(c.fixed){i-=f.scrollTop();j-=f.scrollLeft()}else{d.top+=f.scrollTop();d.left+=f.scrollLeft()}b.css({position:"absolute",top:i,left:j,width:0,zIndex:c.zIndex}).show();d.position=n;a.css(d);b.animate({top:a.css("top"),left:a.css("left"),width:m},
+c.speed,function(){a.css("zIndex",c.zIndex+1).fadeIn(c.fadeInSpeed,function(){p.isOpened()&&!h(this).index(a)?e.call():a.hide()})}).css("position",n)}function q(d){var e=this.getOverlay().hide(),a=this.getConf(),c=this.getTrigger();e=e.data("img");var g={top:a.start.top,left:a.start.left,width:0};c&&h.extend(g,k(c));a.fixed&&e.css({position:"absolute"}).animate({top:"+="+f.scrollTop(),left:"+="+f.scrollLeft()},0);e.animate(g,a.closeSpeed,d)}l.addEffect("apple",o,q)})(jQuery);
+(function(d){function R(a,c){return 32-(new Date(a,c,32)).getDate()}function S(a,c){a=""+a;for(c=c||2;a.length<c;)a="0"+a;return a}function T(a,c,j){var q=a.getDate(),h=a.getDay(),r=a.getMonth();a=a.getFullYear();var f={d:q,dd:S(q),ddd:B[j].shortDays[h],dddd:B[j].days[h],m:r+1,mm:S(r+1),mmm:B[j].shortMonths[r],mmmm:B[j].months[r],yy:String(a).slice(2),yyyy:a};c=c.replace(X,function(s){return s in f?f[s]:s.slice(1,s.length-1)});return Y.html(c).html()}function v(a){return parseInt(a,10)}function U(a,
+c){return a.getFullYear()===c.getFullYear()&&a.getMonth()==c.getMonth()&&a.getDate()==c.getDate()}function C(a){if(a){if(a.constructor==Date)return a;if(typeof a=="string"){var c=a.split("-");if(c.length==3)return new Date(v(c[0]),v(c[1])-1,v(c[2]));if(!/^-?\d+$/.test(a))return;a=v(a)}c=new Date;c.setDate(c.getDate()+a);return c}}function Z(a,c){function j(b,e,g){n=b;D=b.getFullYear();E=b.getMonth();G=b.getDate();g=g||d.Event("api");g.type="change";H.trigger(g,[b]);if(!g.isDefaultPrevented()){a.val(T(b,
+e.format,e.lang));a.data("date",b);h.hide(g)}}function q(b){b.type="onShow";H.trigger(b);d(document).bind("keydown.d",function(e){if(e.ctrlKey)return true;var g=e.keyCode;if(g==8){a.val("");return h.hide(e)}if(g==27)return h.hide(e);if(d(V).index(g)>=0){if(!w){h.show(e);return e.preventDefault()}var i=d("#"+f.weeks+" a"),t=d("."+f.focus),o=i.index(t);t.removeClass(f.focus);if(g==74||g==40)o+=7;else if(g==75||g==38)o-=7;else if(g==76||g==39)o+=1;else if(g==72||g==37)o-=1;if(o>41){h.addMonth();t=d("#"+
+f.weeks+" a:eq("+(o-42)+")")}else if(o<0){h.addMonth(-1);t=d("#"+f.weeks+" a:eq("+(o+42)+")")}else t=i.eq(o);t.addClass(f.focus);return e.preventDefault()}if(g==34)return h.addMonth();if(g==33)return h.addMonth(-1);if(g==36)return h.today();if(g==13)d(e.target).is("select")||d("."+f.focus).click();return d([16,17,18,9]).index(g)>=0});d(document).bind("click.d",function(e){var g=e.target;if(!d(g).parents("#"+f.root).length&&g!=a[0]&&(!L||g!=L[0]))h.hide(e)})}var h=this,r=new Date,f=c.css,s=B[c.lang],
+k=d("#"+f.root),M=k.find("#"+f.title),L,I,J,D,E,G,n=a.attr("data-value")||c.value||a.val(),m=a.attr("min")||c.min,p=a.attr("max")||c.max,w;if(m===0)m="0";n=C(n)||r;m=C(m||c.yearRange[0]*365);p=C(p||c.yearRange[1]*365);if(!s)throw"Dateinput: invalid language: "+c.lang;if(a.attr("type")=="date"){var N=d("<input/>");d.each("class,disabled,id,maxlength,name,readonly,required,size,style,tabindex,title,value".split(","),function(b,e){N.attr(e,a.attr(e))});a.replaceWith(N);a=N}a.addClass(f.input);var H=
+a.add(h);if(!k.length){k=d("<div><div><a/><div/><a/></div><div><div/><div/></div></div>").hide().css({position:"absolute"}).attr("id",f.root);k.children().eq(0).attr("id",f.head).end().eq(1).attr("id",f.body).children().eq(0).attr("id",f.days).end().eq(1).attr("id",f.weeks).end().end().end().find("a").eq(0).attr("id",f.prev).end().eq(1).attr("id",f.next);M=k.find("#"+f.head).find("div").attr("id",f.title);if(c.selectors){var z=d("<select/>").attr("id",f.month),A=d("<select/>").attr("id",f.year);M.html(z.add(A))}for(var $=
+k.find("#"+f.days),O=0;O<7;O++)$.append(d("<span/>").text(s.shortDays[(O+c.firstDay)%7]));d("body").append(k)}if(c.trigger)L=d("<a/>").attr("href","#").addClass(f.trigger).click(function(b){h.show();return b.preventDefault()}).insertAfter(a);var K=k.find("#"+f.weeks);A=k.find("#"+f.year);z=k.find("#"+f.month);d.extend(h,{show:function(b){if(!(a.attr("readonly")||a.attr("disabled")||w)){b=b||d.Event();b.type="onBeforeShow";H.trigger(b);if(!b.isDefaultPrevented()){d.each(W,function(){this.hide()});
+w=true;z.unbind("change").change(function(){h.setValue(A.val(),d(this).val())});A.unbind("change").change(function(){h.setValue(d(this).val(),z.val())});I=k.find("#"+f.prev).unbind("click").click(function(){I.hasClass(f.disabled)||h.addMonth(-1);return false});J=k.find("#"+f.next).unbind("click").click(function(){J.hasClass(f.disabled)||h.addMonth();return false});h.setValue(n);var e=a.offset();if(/iPad/i.test(navigator.userAgent))e.top-=d(window).scrollTop();k.css({top:e.top+a.outerHeight({margins:true})+
+c.offset[0],left:e.left+c.offset[1]});if(c.speed)k.show(c.speed,function(){q(b)});else{k.show();q(b)}return h}}},setValue:function(b,e,g){var i=v(e)>=-1?new Date(v(b),v(e),v(g||1)):b||n;if(i<m)i=m;else if(i>p)i=p;b=i.getFullYear();e=i.getMonth();g=i.getDate();if(e==-1){e=11;b--}else if(e==12){e=0;b++}if(!w){j(i,c);return h}E=e;D=b;g=new Date(b,e,1-c.firstDay);g=g.getDay();var t=R(b,e),o=R(b,e-1),P;if(c.selectors){z.empty();d.each(s.months,function(x,F){m<new Date(b,x+1,-1)&&p>new Date(b,x,0)&&z.append(d("<option/>").html(F).attr("value",
+x))});A.empty();i=r.getFullYear();for(var l=i+c.yearRange[0];l<i+c.yearRange[1];l++)m<=new Date(l+1,-1,1)&&p>new Date(l,0,0)&&A.append(d("<option/>").text(l));z.val(e);A.val(b)}else M.html(s.months[e]+" "+b);K.empty();I.add(J).removeClass(f.disabled);l=!g?-7:0;for(var u,y;l<(!g?35:42);l++){u=d("<a/>");if(l%7===0){P=d("<div/>").addClass(f.week);K.append(P)}if(l<g){u.addClass(f.off);y=o-g+l+1;i=new Date(b,e-1,y)}else if(l>=g+t){u.addClass(f.off);y=l-t-g+1;i=new Date(b,e+1,y)}else{y=l-g+1;i=new Date(b,
+e,y);if(U(n,i))u.attr("id",f.current).addClass(f.focus);else U(r,i)&&u.attr("id",f.today)}m&&i<m&&u.add(I).addClass(f.disabled);p&&i>p&&u.add(J).addClass(f.disabled);u.attr("href","#"+y).text(y).data("date",i);P.append(u)}K.find("a").click(function(x){var F=d(this);if(!F.hasClass(f.disabled)){d("#"+f.current).removeAttr("id");F.attr("id",f.current);j(F.data("date"),c,x)}return false});f.sunday&&K.find(f.week).each(function(){var x=c.firstDay?7-c.firstDay:0;d(this).children().slice(x,x+1).addClass(f.sunday)});
+return h},setMin:function(b,e){m=C(b);e&&n<m&&h.setValue(m);return h},setMax:function(b,e){p=C(b);e&&n>p&&h.setValue(p);return h},today:function(){return h.setValue(r)},addDay:function(b){return this.setValue(D,E,G+(b||1))},addMonth:function(b){return this.setValue(D,E+(b||1),G)},addYear:function(b){return this.setValue(D+(b||1),E,G)},hide:function(b){if(w){b=d.Event();b.type="onHide";H.trigger(b);d(document).unbind("click.d").unbind("keydown.d");if(b.isDefaultPrevented())return;k.hide();w=false}return h},
+getConf:function(){return c},getInput:function(){return a},getCalendar:function(){return k},getValue:function(b){return b?T(n,b,c.lang):n},isOpen:function(){return w}});d.each(["onBeforeShow","onShow","change","onHide"],function(b,e){d.isFunction(c[e])&&d(h).bind(e,c[e]);h[e]=function(g){g&&d(h).bind(e,g);return h}});a.bind("focus click",h.show).keydown(function(b){var e=b.keyCode;if(!w&&d(V).index(e)>=0){h.show(b);return b.preventDefault()}return b.shiftKey||b.ctrlKey||b.altKey||e==9?true:b.preventDefault()});
+C(a.val())&&j(n,c)}d.tools=d.tools||{version:"1.2.5"};var W=[],Q,V=[75,76,38,39,74,72,40,37],B={};Q=d.tools.dateinput={conf:{format:"mm/dd/yy",selectors:false,yearRange:[-5,5],lang:"en",offset:[0,0],speed:0,firstDay:0,min:undefined,max:undefined,trigger:false,css:{prefix:"cal",input:"date",root:0,head:0,title:0,prev:0,next:0,month:0,year:0,days:0,body:0,weeks:0,today:0,current:0,week:0,off:0,sunday:0,focus:0,disabled:0,trigger:0}},localize:function(a,c){d.each(c,function(j,q){c[j]=q.split(",")});
+B[a]=c}};Q.localize("en",{months:"January,February,March,April,May,June,July,August,September,October,November,December",shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec",days:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday",shortDays:"Sun,Mon,Tue,Wed,Thu,Fri,Sat"});var X=/d{1,4}|m{1,4}|yy(?:yy)?|"[^"]*"|'[^']*'/g,Y=d("<a/>");d.expr[":"].date=function(a){var c=a.getAttribute("type");return c&&c=="date"||!!d(a).data("dateinput")};d.fn.dateinput=function(a){if(this.data("dateinput"))return this;
+a=d.extend(true,{},Q.conf,a);d.each(a.css,function(j,q){if(!q&&j!="prefix")a.css[j]=(a.css.prefix||"")+(q||j)});var c;this.each(function(){var j=new Z(d(this),a);W.push(j);j=j.getInput().data("dateinput",j);c=c?c.add(j):j});return c?c:this}})(jQuery);
+(function(e){function F(d,a){a=Math.pow(10,a);return Math.round(d*a)/a}function q(d,a){if(a=parseInt(d.css(a),10))return a;return(d=d[0].currentStyle)&&d.width&&parseInt(d.width,10)}function C(d){return(d=d.data("events"))&&d.onSlide}function G(d,a){function h(c,b,f,j){if(f===undefined)f=b/k*z;else if(j)f-=a.min;if(s)f=Math.round(f/s)*s;if(b===undefined||s)b=f*k/z;if(isNaN(f))return g;b=Math.max(0,Math.min(b,k));f=b/k*z;if(j||!n)f+=a.min;if(n)if(j)b=k-b;else f=a.max-f;f=F(f,t);var r=c.type=="click";
+if(D&&l!==undefined&&!r){c.type="onSlide";A.trigger(c,[f,b]);if(c.isDefaultPrevented())return g}j=r?a.speed:0;r=r?function(){c.type="change";A.trigger(c,[f])}:null;if(n){m.animate({top:b},j,r);a.progress&&B.animate({height:k-b+m.width()/2},j)}else{m.animate({left:b},j,r);a.progress&&B.animate({width:b+m.width()/2},j)}l=f;H=b;d.val(f);return g}function o(){if(n=a.vertical||q(i,"height")>q(i,"width")){k=q(i,"height")-q(m,"height");u=i.offset().top+k}else{k=q(i,"width")-q(m,"width");u=i.offset().left}}
+function v(){o();g.setValue(a.value!==undefined?a.value:a.min)}var g=this,p=a.css,i=e("<div><div/><a href='#'/></div>").data("rangeinput",g),n,l,u,k,H;d.before(i);var m=i.addClass(p.slider).find("a").addClass(p.handle),B=i.find("div").addClass(p.progress);e.each("min,max,step,value".split(","),function(c,b){c=d.attr(b);if(parseFloat(c))a[b]=parseFloat(c,10)});var z=a.max-a.min,s=a.step=="any"?0:a.step,t=a.precision;if(t===undefined)try{t=s.toString().split(".")[1].length}catch(I){t=0}if(d.attr("type")==
+"range"){var w=e("<input/>");e.each("class,disabled,id,maxlength,name,readonly,required,size,style,tabindex,title,value".split(","),function(c,b){w.attr(b,d.attr(b))});w.val(a.value);d.replaceWith(w);d=w}d.addClass(p.input);var A=e(g).add(d),D=true;e.extend(g,{getValue:function(){return l},setValue:function(c,b){o();return h(b||e.Event("api"),undefined,c,true)},getConf:function(){return a},getProgress:function(){return B},getHandle:function(){return m},getInput:function(){return d},step:function(c,
+b){b=b||e.Event();var f=a.step=="any"?1:a.step;g.setValue(l+f*(c||1),b)},stepUp:function(c){return g.step(c||1)},stepDown:function(c){return g.step(-c||-1)}});e.each("onSlide,change".split(","),function(c,b){e.isFunction(a[b])&&e(g).bind(b,a[b]);g[b]=function(f){f&&e(g).bind(b,f);return g}});m.drag({drag:false}).bind("dragStart",function(){o();D=C(e(g))||C(d)}).bind("drag",function(c,b,f){if(d.is(":disabled"))return false;h(c,n?b:f)}).bind("dragEnd",function(c){if(!c.isDefaultPrevented()){c.type=
+"change";A.trigger(c,[l])}}).click(function(c){return c.preventDefault()});i.click(function(c){if(d.is(":disabled")||c.target==m[0])return c.preventDefault();o();var b=m.width()/2;h(c,n?k-u-b+c.pageY:c.pageX-u-b)});a.keyboard&&d.keydown(function(c){if(!d.attr("readonly")){var b=c.keyCode,f=e([75,76,38,33,39]).index(b)!=-1,j=e([74,72,40,34,37]).index(b)!=-1;if((f||j)&&!(c.shiftKey||c.altKey||c.ctrlKey)){if(f)g.step(b==33?10:1,c);else if(j)g.step(b==34?-10:-1,c);return c.preventDefault()}}});d.blur(function(c){var b=
+e(this).val();b!==l&&g.setValue(b,c)});e.extend(d[0],{stepUp:g.stepUp,stepDown:g.stepDown});v();k||e(window).load(v)}e.tools=e.tools||{version:"1.2.5"};var E;E=e.tools.rangeinput={conf:{min:0,max:100,step:"any",steps:0,value:0,precision:undefined,vertical:0,keyboard:true,progress:false,speed:100,css:{input:"range",slider:"slider",progress:"progress",handle:"handle"}}};var x,y;e.fn.drag=function(d){document.ondragstart=function(){return false};d=e.extend({x:true,y:true,drag:true},d);x=x||e(document).bind("mousedown mouseup",
+function(a){var h=e(a.target);if(a.type=="mousedown"&&h.data("drag")){var o=h.position(),v=a.pageX-o.left,g=a.pageY-o.top,p=true;x.bind("mousemove.drag",function(i){var n=i.pageX-v;i=i.pageY-g;var l={};if(d.x)l.left=n;if(d.y)l.top=i;if(p){h.trigger("dragStart");p=false}d.drag&&h.css(l);h.trigger("drag",[i,n]);y=h});a.preventDefault()}else try{y&&y.trigger("dragEnd")}finally{x.unbind("mousemove.drag");y=null}});return this.data("drag",true)};e.expr[":"].range=function(d){var a=d.getAttribute("type");
+return a&&a=="range"||!!e(d).filter("input").data("rangeinput")};e.fn.rangeinput=function(d){if(this.data("rangeinput"))return this;d=e.extend(true,{},E.conf,d);var a;this.each(function(){var h=new G(e(this),e.extend(true,{},d));h=h.getInput().data("rangeinput",h);a=a?a.add(h):h});return a?a:this}})(jQuery);
+(function(e){function t(a,b,c){var k=a.offset().top,f=a.offset().left,l=c.position.split(/,?\s+/),p=l[0];l=l[1];k-=b.outerHeight()-c.offset[0];f+=a.outerWidth()+c.offset[1];if(/iPad/i.test(navigator.userAgent))k-=e(window).scrollTop();c=b.outerHeight()+a.outerHeight();if(p=="center")k+=c/2;if(p=="bottom")k+=c;a=a.outerWidth();if(l=="center")f-=(a+b.outerWidth())/2;if(l=="left")f-=a;return{top:k,left:f}}function y(a){function b(){return this.getAttribute("type")==a}b.key="[type="+a+"]";return b}function u(a,
+b,c){function k(g,d,i){if(!(!c.grouped&&g.length)){var j;if(i===false||e.isArray(i)){j=h.messages[d.key||d]||h.messages["*"];j=j[c.lang]||h.messages["*"].en;(d=j.match(/\$\d/g))&&e.isArray(i)&&e.each(d,function(m){j=j.replace(this,i[m])})}else j=i[c.lang]||i;g.push(j)}}var f=this,l=b.add(f);a=a.not(":button, :image, :reset, :submit");e.extend(f,{getConf:function(){return c},getForm:function(){return b},getInputs:function(){return a},reflow:function(){a.each(function(){var g=e(this),d=g.data("msg.el");
+if(d){g=t(g,d,c);d.css({top:g.top,left:g.left})}});return f},invalidate:function(g,d){if(!d){var i=[];e.each(g,function(j,m){j=a.filter("[name='"+j+"']");if(j.length){j.trigger("OI",[m]);i.push({input:j,messages:[m]})}});g=i;d=e.Event()}d.type="onFail";l.trigger(d,[g]);d.isDefaultPrevented()||q[c.effect][0].call(f,g,d);return f},reset:function(g){g=g||a;g.removeClass(c.errorClass).each(function(){var d=e(this).data("msg.el");if(d){d.remove();e(this).data("msg.el",null)}}).unbind(c.errorInputEvent||
+"");return f},destroy:function(){b.unbind(c.formEvent+".V").unbind("reset.V");a.unbind(c.inputEvent+".V").unbind("change.V");return f.reset()},checkValidity:function(g,d){g=g||a;g=g.not(":disabled");if(!g.length)return true;d=d||e.Event();d.type="onBeforeValidate";l.trigger(d,[g]);if(d.isDefaultPrevented())return d.result;var i=[];g.not(":radio:not(:checked)").each(function(){var m=[],n=e(this).data("messages",m),v=r&&n.is(":date")?"onHide.v":c.errorInputEvent+".v";n.unbind(v);e.each(w,function(){var o=
+this,s=o[0];if(n.filter(s).length){o=o[1].call(f,n,n.val());if(o!==true){d.type="onBeforeFail";l.trigger(d,[n,s]);if(d.isDefaultPrevented())return false;var x=n.attr(c.messageAttr);if(x){m=[x];return false}else k(m,s,o)}}});if(m.length){i.push({input:n,messages:m});n.trigger("OI",[m]);c.errorInputEvent&&n.bind(v,function(o){f.checkValidity(n,o)})}if(c.singleError&&i.length)return false});var j=q[c.effect];if(!j)throw'Validator: cannot find effect "'+c.effect+'"';if(i.length){f.invalidate(i,d);return false}else{j[1].call(f,
+g,d);d.type="onSuccess";l.trigger(d,[g]);g.unbind(c.errorInputEvent+".v")}return true}});e.each("onBeforeValidate,onBeforeFail,onFail,onSuccess".split(","),function(g,d){e.isFunction(c[d])&&e(f).bind(d,c[d]);f[d]=function(i){i&&e(f).bind(d,i);return f}});c.formEvent&&b.bind(c.formEvent+".V",function(g){if(!f.checkValidity(null,g))return g.preventDefault()});b.bind("reset.V",function(){f.reset()});a[0]&&a[0].validity&&a.each(function(){this.oninvalid=function(){return false}});if(b[0])b[0].checkValidity=
+f.checkValidity;c.inputEvent&&a.bind(c.inputEvent+".V",function(g){f.checkValidity(e(this),g)});a.filter(":checkbox, select").filter("[required]").bind("change.V",function(g){var d=e(this);if(this.checked||d.is("select")&&e(this).val())q[c.effect][1].call(f,d,g)});var p=a.filter(":radio").change(function(g){f.checkValidity(p,g)});e(window).resize(function(){f.reflow()})}e.tools=e.tools||{version:"1.2.5"};var z=/\[type=([a-z]+)\]/,A=/^-?[0-9]*(\.[0-9]+)?$/,r=e.tools.dateinput,B=/^([a-z0-9_\.\-\+]+)@([\da-z\.\-]+)\.([a-z\.]{2,6})$/i,
+C=/^(https?:\/\/)?[\da-z\.\-]+\.[a-z\.]{2,6}[#&+_\?\/\w \.\-=]*$/i,h;h=e.tools.validator={conf:{grouped:false,effect:"default",errorClass:"invalid",inputEvent:null,errorInputEvent:"keyup",formEvent:"submit",lang:"en",message:"<div/>",messageAttr:"data-message",messageClass:"error",offset:[0,0],position:"center right",singleError:false,speed:"normal"},messages:{"*":{en:"Please correct this value"}},localize:function(a,b){e.each(b,function(c,k){h.messages[c]=h.messages[c]||{};h.messages[c][a]=k})},
+localizeFn:function(a,b){h.messages[a]=h.messages[a]||{};e.extend(h.messages[a],b)},fn:function(a,b,c){if(e.isFunction(b))c=b;else{if(typeof b=="string")b={en:b};this.messages[a.key||a]=b}if(b=z.exec(a))a=y(b[1]);w.push([a,c])},addEffect:function(a,b,c){q[a]=[b,c]}};var w=[],q={"default":[function(a){var b=this.getConf();e.each(a,function(c,k){c=k.input;c.addClass(b.errorClass);var f=c.data("msg.el");if(!f){f=e(b.message).addClass(b.messageClass).appendTo(document.body);c.data("msg.el",f)}f.css({visibility:"hidden"}).find("p").remove();
+e.each(k.messages,function(l,p){e("<p/>").html(p).appendTo(f)});f.outerWidth()==f.parent().width()&&f.add(f.find("p")).css({display:"inline"});k=t(c,f,b);f.css({visibility:"visible",position:"absolute",top:k.top,left:k.left}).fadeIn(b.speed)})},function(a){var b=this.getConf();a.removeClass(b.errorClass).each(function(){var c=e(this).data("msg.el");c&&c.css({visibility:"hidden"})})}]};e.each("email,url,number".split(","),function(a,b){e.expr[":"][b]=function(c){return c.getAttribute("type")===b}});
+e.fn.oninvalid=function(a){return this[a?"bind":"trigger"]("OI",a)};h.fn(":email","Please enter a valid email address",function(a,b){return!b||B.test(b)});h.fn(":url","Please enter a valid URL",function(a,b){return!b||C.test(b)});h.fn(":number","Please enter a numeric value.",function(a,b){return A.test(b)});h.fn("[max]","Please enter a value smaller than $1",function(a,b){if(b===""||r&&a.is(":date"))return true;a=a.attr("max");return parseFloat(b)<=parseFloat(a)?true:[a]});h.fn("[min]","Please enter a value larger than $1",
+function(a,b){if(b===""||r&&a.is(":date"))return true;a=a.attr("min");return parseFloat(b)>=parseFloat(a)?true:[a]});h.fn("[required]","Please complete this mandatory field.",function(a,b){if(a.is(":checkbox"))return a.is(":checked");return!!b});h.fn("[pattern]",function(a){var b=new RegExp("^"+a.attr("pattern")+"$");return b.test(a.val())});e.fn.validator=function(a){var b=this.data("validator");if(b){b.destroy();this.removeData("validator")}a=e.extend(true,{},h.conf,a);if(this.is("form"))return this.each(function(){var c=
+e(this);b=new u(c.find(":input"),c,a);c.data("validator",b)});else{b=new u(this,this.eq(0).closest("form"),a);return this.data("validator",b)}}})(jQuery);
+
+/*!
+ * jQuery UI 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI
+ */
+
+(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.16",
+keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({propAttr:c.fn.prop||c.fn.attr,_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=
+this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,
+"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":
+"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,
+outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a,
+"tabindex"),d=isNaN(b);return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&
+a.element[0].parentNode)for(var e=0;e<b.length;e++)a.options[b[e][0]]&&b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&
+c.ui.isOverAxis(b,e,i)}})}})(jQuery);
+;/*!
+ * jQuery UI Widget 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Widget
+ */
+(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)try{b(d).triggerHandler("remove")}catch(e){}k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(d){}});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=
+function(h){return!!b.data(h,a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):
+d;if(e&&d.charAt(0)==="_")return h;e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=
+b.extend(true,{},this.options,this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+
+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",
+c);return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
+;/*!
+ * jQuery UI Mouse 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Mouse
+ *
+ * Depends:
+ *	jquery.ui.widget.js
+ */
+(function(b){var d=false;b(document).mouseup(function(){d=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(c){return a._mouseDown(c)}).bind("click."+this.widgetName,function(c){if(true===b.data(c.target,a.widgetName+".preventClickEvent")){b.removeData(c.target,a.widgetName+".preventClickEvent");c.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+
+this.widgetName)},_mouseDown:function(a){if(!d){this._mouseStarted&&this._mouseUp(a);this._mouseDownEvent=a;var c=this,f=a.which==1,g=typeof this.options.cancel=="string"&&a.target.nodeName?b(a.target).closest(this.options.cancel).length:false;if(!f||g||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=
+this._mouseStart(a)!==false;if(!this._mouseStarted){a.preventDefault();return true}}true===b.data(a.target,this.widgetName+".preventClickEvent")&&b.removeData(a.target,this.widgetName+".preventClickEvent");this._mouseMoveDelegate=function(e){return c._mouseMove(e)};this._mouseUpDelegate=function(e){return c._mouseUp(e)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return d=true}},_mouseMove:function(a){if(b.browser.msie&&
+!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=
+false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
+;/*
+ * jQuery UI Position 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Position
+ */
+(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY,
+left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+=
+k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-=
+m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left=
+d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+=
+a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b),
+g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery);
+;/*
+ * jQuery UI Draggable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Draggables
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.widget.js
+ */
+(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
+"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
+this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;if(b.iframeFix)d(b.iframeFix===true?"iframe":b.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")});return true},_mouseStart:function(a){var b=this.options;
+this.helper=this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});
+this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);d.ui.ddmanager&&d.ui.ddmanager.dragStart(this,a);return true},
+_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=
+false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,
+10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},_mouseUp:function(a){this.options.iframeFix===true&&d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});d.ui.ddmanager&&d.ui.ddmanager.dragStop(this,a);return d.ui.mouse.prototype._mouseUp.call(this,a)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||
+!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone().removeAttr("id"):this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&
+a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=
+this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),
+10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),
+10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[a.containment=="document"?0:d(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a.containment=="document"?0:d(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,
+(a.containment=="document"?0:d(window).scrollLeft())+d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){a=d(a.containment);var b=a[0];if(b){a.offset();var c=d(b).css("overflow")!=
+"hidden";this.containment=[(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),
+10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relative_container=a}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+
+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&
+!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,h=a.pageY;if(this.originalPosition){var g;if(this.containment){if(this.relative_container){g=this.relative_container.offset();g=[this.containment[0]+g.left,this.containment[1]+g.top,this.containment[2]+g.left,this.containment[3]+g.top]}else g=this.containment;if(a.pageX-this.offset.click.left<g[0])e=g[0]+this.offset.click.left;
+if(a.pageY-this.offset.click.top<g[1])h=g[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>g[2])e=g[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>g[3])h=g[3]+this.offset.click.top}if(b.grid){h=b.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1]:this.originalPageY;h=g?!(h-this.offset.click.top<g[1]||h-this.offset.click.top>g[3])?h:!(h-this.offset.click.top<g[1])?h-b.grid[1]:h+b.grid[1]:h;e=b.grid[0]?this.originalPageX+Math.round((e-this.originalPageX)/
+b.grid[0])*b.grid[0]:this.originalPageX;e=g?!(e-this.offset.click.left<g[0]||e-this.offset.click.left>g[2])?e:!(e-this.offset.click.left<g[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<
+526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,
+c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.16"});d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var h=d.data(this,"sortable");if(h&&!h.options.disabled){c.sortables.push({instance:h,shouldRevert:h.options.revert});
+h.refreshPositions();h._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=
+false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",true);
+this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;
+c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&
+this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=
+a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!=
+"x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop-c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-b.overflowOffset.left<
+c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-
+c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,a)}});d.ui.plugin.add("draggable","snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,
+width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),f=c.options,e=f.snapTolerance,h=b.offset.left,g=h+c.helperProportions.width,n=b.offset.top,o=n+c.helperProportions.height,i=c.snapElements.length-1;i>=0;i--){var j=c.snapElements[i].left,l=j+c.snapElements[i].width,k=c.snapElements[i].top,m=k+c.snapElements[i].height;if(j-e<h&&h<l+e&&k-e<n&&n<m+e||j-e<h&&h<l+e&&k-e<o&&o<m+e||j-e<g&&g<l+e&&k-e<n&&n<m+e||j-e<g&&g<l+e&&k-e<o&&
+o<m+e){if(f.snapMode!="inner"){var p=Math.abs(k-o)<=e,q=Math.abs(m-n)<=e,r=Math.abs(j-g)<=e,s=Math.abs(l-h)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k-c.helperProportions.height,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:m,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l}).left-c.margins.left}var t=
+p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(k-n)<=e;q=Math.abs(m-o)<=e;r=Math.abs(j-h)<=e;s=Math.abs(l-g)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:m-c.helperProportions.height,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[i].snapping&&
+(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=p||q||r||s||t}else{c.snapElements[i].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),
+10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});d.ui.plugin.add("draggable","zIndex",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
+;/*
+ * jQuery UI Droppable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Droppables
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.widget.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.draggable.js
+ */
+(function(d){d.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:false,addClasses:true,greedy:false,hoverClass:false,scope:"default",tolerance:"intersect"},_create:function(){var a=this.options,b=a.accept;this.isover=0;this.isout=1;this.accept=d.isFunction(b)?b:function(c){return c.is(b)};this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight};d.ui.ddmanager.droppables[a.scope]=d.ui.ddmanager.droppables[a.scope]||[];d.ui.ddmanager.droppables[a.scope].push(this);
+a.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){for(var a=d.ui.ddmanager.droppables[this.options.scope],b=0;b<a.length;b++)a[b]==this&&a.splice(b,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(a,b){if(a=="accept")this.accept=d.isFunction(b)?b:function(c){return c.is(b)};d.Widget.prototype._setOption.apply(this,arguments)},_activate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&
+this.element.addClass(this.options.activeClass);b&&this._trigger("activate",a,this.ui(b))},_deactivate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);b&&this._trigger("deactivate",a,this.ui(b))},_over:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
+this._trigger("over",a,this.ui(b))}},_out:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",a,this.ui(b))}},_drop:function(a,b){var c=b||d.ui.ddmanager.current;if(!c||(c.currentItem||c.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var g=
+d.data(this,"droppable");if(g.options.greedy&&!g.options.disabled&&g.options.scope==c.options.scope&&g.accept.call(g.element[0],c.currentItem||c.element)&&d.ui.intersect(c,d.extend(g,{offset:g.element.offset()}),g.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],c.currentItem||c.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
+a,this.ui(c));return this.element}return false},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}});d.extend(d.ui.droppable,{version:"1.8.16"});d.ui.intersect=function(a,b,c){if(!b.offset)return false;var e=(a.positionAbs||a.position.absolute).left,g=e+a.helperProportions.width,f=(a.positionAbs||a.position.absolute).top,h=f+a.helperProportions.height,i=b.offset.left,k=i+b.proportions.width,j=b.offset.top,l=j+b.proportions.height;
+switch(c){case "fit":return i<=e&&g<=k&&j<=f&&h<=l;case "intersect":return i<e+a.helperProportions.width/2&&g-a.helperProportions.width/2<k&&j<f+a.helperProportions.height/2&&h-a.helperProportions.height/2<l;case "pointer":return d.ui.isOver((a.positionAbs||a.position.absolute).top+(a.clickOffset||a.offset.click).top,(a.positionAbs||a.position.absolute).left+(a.clickOffset||a.offset.click).left,j,i,b.proportions.height,b.proportions.width);case "touch":return(f>=j&&f<=l||h>=j&&h<=l||f<j&&h>l)&&(e>=
+i&&e<=k||g>=i&&g<=k||e<i&&g>k);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f<c.length;f++)if(!(c[f].options.disabled||a&&!c[f].accept.call(c[f].element[0],a.currentItem||a.element))){for(var h=0;h<g.length;h++)if(g[h]==c[f].element[0]){c[f].proportions.height=0;continue a}c[f].visible=c[f].element.css("display")!=
+"none";if(c[f].visible){e=="mousedown"&&c[f]._activate.call(c[f],b);c[f].offset=c[f].element.offset();c[f].proportions={width:c[f].element[0].offsetWidth,height:c[f].element[0].offsetHeight}}}},drop:function(a,b){var c=false;d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&d.ui.intersect(a,this,this.options.tolerance))c=c||this._drop.call(this,b);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],a.currentItem||
+a.element)){this.isout=1;this.isover=0;this._deactivate.call(this,b)}}});return c},dragStart:function(a,b){a.element.parents(":not(body,html)").bind("scroll.droppable",function(){a.options.refreshPositions||d.ui.ddmanager.prepareOffsets(a,b)})},drag:function(a,b){a.options.refreshPositions&&d.ui.ddmanager.prepareOffsets(a,b);d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var c=d.ui.intersect(a,this,this.options.tolerance);
+if(c=!c&&this.isover==1?"isout":c&&this.isover==0?"isover":null){var e;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");if(g.length){e=d.data(g[0],"droppable");e.greedyChild=c=="isover"?1:0}}if(e&&c=="isover"){e.isover=0;e.isout=1;e._out.call(e,b)}this[c]=1;this[c=="isout"?"isover":"isout"]=0;this[c=="isover"?"_over":"_out"].call(this,b);if(e&&c=="isout"){e.isout=0;e.isover=1;e._over.call(e,b)}}}})},dragStop:function(a,b){a.element.parents(":not(body,html)").unbind("scroll.droppable");
+a.options.refreshPositions||d.ui.ddmanager.prepareOffsets(a,b)}}})(jQuery);
+;/*
+ * jQuery UI Resizable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Resizables
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.widget.js
+ */
+(function(e){e.widget("ui.resizable",e.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var b=this,a=this.options;this.element.addClass("ui-resizable");e.extend(this,{_aspectRatio:!!a.aspectRatio,aspectRatio:a.aspectRatio,originalElement:this.element,
+_proportionallyResizeElements:[],_helper:a.helper||a.ghost||a.animate?a.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&e.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(e('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
+top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
+this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
+nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d<c.length;d++){var f=e.trim(c[d]),g=e('<div class="ui-resizable-handle '+("ui-resizable-"+f)+'"></div>');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor==
+String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),l=0;l=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,l);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection();
+this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){if(!a.disabled){e(this).removeClass("ui-resizable-autohide");b._handles.show()}},function(){if(!a.disabled)if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();
+var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a=
+false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});
+this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff=
+{width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis];
+if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},
+_mouseStop:function(b){this.resizing=false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,
+{top:g,left:d}));c.helper.height(c.size.height);c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateVirtualBoundaries:function(b){var a=this.options,c,d,f;a={minWidth:k(a.minWidth)?a.minWidth:0,maxWidth:k(a.maxWidth)?a.maxWidth:Infinity,minHeight:k(a.minHeight)?a.minHeight:0,maxHeight:k(a.maxHeight)?a.maxHeight:
+Infinity};if(this._aspectRatio||b){b=a.minHeight*this.aspectRatio;d=a.minWidth/this.aspectRatio;c=a.maxHeight*this.aspectRatio;f=a.maxWidth/this.aspectRatio;if(b>a.minWidth)a.minWidth=b;if(d>a.minHeight)a.minHeight=d;if(c<a.maxWidth)a.maxWidth=c;if(f<a.maxHeight)a.maxHeight=f}this._vBoundaries=a},_updateCache:function(b){this.offset=this.helper.offset();if(k(b.left))this.position.left=b.left;if(k(b.top))this.position.top=b.top;if(k(b.height))this.size.height=b.height;if(k(b.width))this.size.width=
+b.width},_updateRatio:function(b){var a=this.position,c=this.size,d=this.axis;if(k(b.height))b.width=b.height*this.aspectRatio;else if(k(b.width))b.height=b.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=null}if(d=="nw"){b.top=a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this._vBoundaries,c=this.axis,d=k(b.width)&&a.maxWidth&&a.maxWidth<b.width,f=k(b.height)&&a.maxHeight&&a.maxHeight<b.height,g=k(b.width)&&a.minWidth&&
+a.minWidth>b.width,h=k(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,l=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&l)b.left=i-a.minWidth;if(d&&l)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=
+null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=this.helper||this.element,a=0;a<this._proportionallyResizeElements.length;a++){var c=this._proportionallyResizeElements[a];if(!this.borderDif){var d=[c.css("borderTopWidth"),c.css("borderRightWidth"),c.css("borderBottomWidth"),c.css("borderLeftWidth")],f=[c.css("paddingTop"),c.css("paddingRight"),c.css("paddingBottom"),c.css("paddingLeft")];this.borderDif=e.map(d,function(g,h){g=parseInt(g,10)||
+0;h=parseInt(f[h],10)||0;return g+h})}e.browser.msie&&(e(b).is(":hidden")||e(b).parents(":hidden").length)||c.css({height:b.height()-this.borderDif[0]-this.borderDif[2]||0,width:b.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var b=this.options;this.elementOffset=this.element.offset();if(this._helper){this.helper=this.helper||e('<div style="overflow:hidden;"></div>');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+
+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+
+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);
+b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,{version:"1.8.16"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),
+10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-
+f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var l=e(this),q=e(this).data("resizable-alsoresize"),p={},r=j&&j.length?j:l.parents(a.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(l.css("position"))){c._revertToRelativePosition=true;l.css({position:"absolute",top:"auto",left:"auto"})}l.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?
+e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=
+e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,
+step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=
+e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;
+var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:
+a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-
+d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,
+f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,
+display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost=="string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=
+e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=
+d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,10)||0},k=function(b){return!isNaN(parseInt(b,10))}})(jQuery);
+;/*
+ * jQuery UI Selectable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Selectables
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.widget.js
+ */
+(function(e){e.widget("ui.selectable",e.ui.mouse,{options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=false;var f;this.refresh=function(){f=e(c.options.filter,c.element[0]);f.each(function(){var d=e(this),b=d.offset();e.data(this,"selectable-item",{element:this,$element:d,left:b.left,top:b.top,right:b.left+d.outerWidth(),bottom:b.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"),
+selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=f.addClass("ui-selectee");this._mouseInit();this.helper=e("<div class='ui-selectable-helper'></div>")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var f=this;this.opos=[c.pageX,
+c.pageY];if(!this.options.disabled){var d=this.options;this.selectees=e(d.filter,this.element[0]);this._trigger("start",c);e(d.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});d.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var b=e.data(this,"selectable-item");b.startselected=true;if(!c.metaKey){b.$element.removeClass("ui-selected");b.selected=false;b.$element.addClass("ui-unselecting");b.unselecting=true;f._trigger("unselecting",
+c,{unselecting:b.element})}});e(c.target).parents().andSelf().each(function(){var b=e.data(this,"selectable-item");if(b){var g=!c.metaKey||!b.$element.hasClass("ui-selected");b.$element.removeClass(g?"ui-unselecting":"ui-selected").addClass(g?"ui-selecting":"ui-unselecting");b.unselecting=!g;b.selecting=g;(b.selected=g)?f._trigger("selecting",c,{selecting:b.element}):f._trigger("unselecting",c,{unselecting:b.element});return false}})}},_mouseDrag:function(c){var f=this;this.dragged=true;if(!this.options.disabled){var d=
+this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.right<b||a.top>i||a.bottom<g);else if(d.tolerance=="fit")k=a.left>b&&a.right<h&&a.top>g&&a.bottom<i;if(k){if(a.selected){a.$element.removeClass("ui-selected");a.selected=false}if(a.unselecting){a.$element.removeClass("ui-unselecting");
+a.unselecting=false}if(!a.selecting){a.$element.addClass("ui-selecting");a.selecting=true;f._trigger("selecting",c,{selecting:a.element})}}else{if(a.selecting)if(c.metaKey&&a.startselected){a.$element.removeClass("ui-selecting");a.selecting=false;a.$element.addClass("ui-selected");a.selected=true}else{a.$element.removeClass("ui-selecting");a.selecting=false;if(a.startselected){a.$element.addClass("ui-unselecting");a.unselecting=true}f._trigger("unselecting",c,{unselecting:a.element})}if(a.selected)if(!c.metaKey&&
+!a.startselected){a.$element.removeClass("ui-selected");a.selected=false;a.$element.addClass("ui-unselecting");a.unselecting=true;f._trigger("unselecting",c,{unselecting:a.element})}}}});return false}},_mouseStop:function(c){var f=this;this.dragged=false;e(".ui-unselecting",this.element[0]).each(function(){var d=e.data(this,"selectable-item");d.$element.removeClass("ui-unselecting");d.unselecting=false;d.startselected=false;f._trigger("unselected",c,{unselected:d.element})});e(".ui-selecting",this.element[0]).each(function(){var d=
+e.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected");d.selecting=false;d.selected=true;d.startselected=true;f._trigger("selected",c,{selected:d.element})});this._trigger("stop",c);this.helper.remove();return false}});e.extend(e.ui.selectable,{version:"1.8.16"})})(jQuery);
+;/*
+ * jQuery UI Sortable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Sortables
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.widget.js
+ */
+(function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable");
+this.refresh();this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a===
+"disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&&
+!b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,
+left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};
+this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!=
+document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a);
+return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY<b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop+b.scrollSpeed;else if(a.pageY-this.overflowOffset.top<
+b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop-b.scrollSpeed;if(this.overflowOffset.left+this.scrollParent[0].offsetWidth-a.pageX<b.scrollSensitivity)this.scrollParent[0].scrollLeft=c=this.scrollParent[0].scrollLeft+b.scrollSpeed;else if(a.pageX-this.overflowOffset.left<b.scrollSensitivity)this.scrollParent[0].scrollLeft=c=this.scrollParent[0].scrollLeft-b.scrollSpeed}else{if(a.pageY-d(document).scrollTop()<b.scrollSensitivity)c=d(document).scrollTop(d(document).scrollTop()-
+b.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<b.scrollSensitivity)c=d(document).scrollTop(d(document).scrollTop()+b.scrollSpeed);if(a.pageX-d(document).scrollLeft()<b.scrollSensitivity)c=d(document).scrollLeft(d(document).scrollLeft()-b.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<b.scrollSensitivity)c=d(document).scrollLeft(d(document).scrollLeft()+b.scrollSpeed)}c!==false&&d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,
+a)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(b=this.items.length-1;b>=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0],
+e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset();
+c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp({target:null});this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):
+this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}if(this.placeholder){this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null,
+dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):d(this.domPosition.parent).prepend(this.currentItem)}return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")},
+toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+j<k&&b+l>g&&b+l<h;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||
+this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?j:g<b+this.helperProportions.width/2&&c-this.helperProportions.width/2<h&&i<e+this.helperProportions.height/2&&f-this.helperProportions.height/2<k},_intersectsWithPointer:function(a){var b=d.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,a.top,a.height);a=d.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,a.left,a.width);b=b&&a;a=this._getDragVerticalDirection();
+var c=this._getDragHorizontalDirection();if(!b)return false;return this.floating?c&&c=="right"||a=="down"?2:1:a&&(a=="down"?2:1)},_intersectsWithSides:function(a){var b=d.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,a.top+a.height/2,a.height);a=d.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,a.left+a.width/2,a.width);var c=this._getDragVerticalDirection(),e=this._getDragHorizontalDirection();return this.floating&&e?e=="right"&&a||e=="left"&&!a:c&&(c=="down"&&b||c=="up"&&!b)},
+_getDragVerticalDirection:function(){var a=this.positionAbs.top-this.lastPositionAbs.top;return a!=0&&(a>0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith();
+if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),
+this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=this.currentItem.find(":data(sortable-item)"),b=0;b<this.items.length;b++)for(var c=0;c<a.length;c++)a[c]==this.items[b].item[0]&&this.items.splice(b,1)},_refreshItems:function(a){this.items=[];this.containers=[this];var b=this.items,c=[[d.isFunction(this.options.items)?this.options.items.call(this.element[0],a,{item:this.currentItem}):d(this.options.items,this.element),
+this]],e=this._connectWith();if(e)for(var f=e.length-1;f>=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h<g;h++){i=d(e[h]);i.data("sortable-item",a);b.push({item:i,instance:a,width:0,height:0,left:0,top:0})}}},refreshPositions:function(a){if(this.offsetParent&&
+this.helper)this.offset.parent=this._getParentOffset();for(var b=this.items.length-1;b>=0;b--){var c=this.items[b];if(!(c.instance!=this.currentContainer&&this.currentContainer&&c.item[0]!=this.currentItem[0])){var e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b=
+this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f=
+d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||
+0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out",
+a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h-
+f)<b){b=Math.abs(h-f);e=this.items[g]}}if(e||this.options.dropOnEmpty){this.currentContainer=this.containers[c];e?this._rearrange(a,e,null,true):this._rearrange(a,null,this.containers[c].element,true);this._trigger("change",a,this._uiHash());this.containers[c]._trigger("change",a,this._uiHash(this));this.options.placeholder.update(this.currentContainer,this.placeholder);this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}}},_createHelper:function(a){var b=
+this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a,this.currentItem])):b.helper=="clone"?this.currentItem.clone():this.currentItem;a.parents("body").length||d(b.appendTo!="parent"?b.appendTo:this.currentItem[0].parentNode)[0].appendChild(a[0]);if(a[0]==this.currentItem[0])this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")};if(a[0].style.width==
+""||b.forceHelperSize)a.width(this.currentItem.width());if(a[0].style.height==""||b.forceHelperSize)a.height(this.currentItem.height());return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=
+this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a=
+{top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.currentItem.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),
+10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,d(a.containment=="document"?
+document:window).width()-this.helperProportions.width-this.margins.left,(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)){var b=d(a.containment)[0];a=d(a.containment).offset();var c=d(b).css("overflow")!="hidden";this.containment=[a.left+(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0)-this.margins.left,a.top+(parseInt(d(b).css("borderTopWidth"),
+10)||0)+(parseInt(d(b).css("paddingTop"),10)||0)-this.margins.top,a.left+(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,a.top+(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(a,b){if(!b)b=
+this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&
+this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(c[0].tagName);if(this.cssPosition=="relative"&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0]))this.offset.relative=this._getRelativeOffset();
+var f=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])f=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-
+this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;f=this.originalPageX+Math.round((f-this.originalPageX)/b.grid[0])*b.grid[0];f=this.containment?!(f-this.offset.click.left<this.containment[0]||f-this.offset.click.left>this.containment[2])?f:!(f-this.offset.click.left<this.containment[0])?f-b.grid[0]:f+b.grid[0]:f}}return{top:g-
+this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())}},_rearrange:function(a,b,c,e){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],
+this.direction=="down"?b.item[0]:b.item[0].nextSibling);this.counter=this.counter?++this.counter:1;var f=this,g=this.counter;window.setTimeout(function(){g==f.counter&&f.refreshPositions(!e)},0)},_clear:function(a,b){this.reverting=false;var c=[];!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem);this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var e in this._storedCSS)if(this._storedCSS[e]=="auto"||this._storedCSS[e]=="static")this._storedCSS[e]=
+"";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!b&&c.push(function(f){this._trigger("receive",f,this._uiHash(this.fromOutside))});if((this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!b)c.push(function(f){this._trigger("update",f,this._uiHash())});if(!d.ui.contains(this.element[0],this.currentItem[0])){b||c.push(function(f){this._trigger("remove",
+f,this._uiHash())});for(e=this.containers.length-1;e>=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this,
+this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop",
+a,this._uiHash());for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}return false}b||this._trigger("beforeStop",a,this._uiHash());this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.helper[0]!=this.currentItem[0]&&this.helper.remove();this.helper=null;if(!b){for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}this.fromOutside=false;return true},_trigger:function(){d.Widget.prototype._trigger.apply(this,arguments)===false&&this.cancel()},
+_uiHash:function(a){var b=a||this;return{helper:b.helper,placeholder:b.placeholder||d([]),position:b.position,originalPosition:b.originalPosition,offset:b.positionAbs,item:b.currentItem,sender:a?a.element:null}}});d.extend(d.ui.sortable,{version:"1.8.16"})})(jQuery);
+;/*
+ * jQuery UI Accordion 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Accordion
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.widget.js
+ */
+(function(c){c.widget("ui.accordion",{options:{active:0,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var a=this,b=a.options;a.running=0;a.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix");
+a.headers=a.element.find(b.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){b.disabled||c(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){b.disabled||c(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){b.disabled||c(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){b.disabled||c(this).removeClass("ui-state-focus")});a.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
+if(b.navigation){var d=a.element.find("a").filter(b.navigationFilter).eq(0);if(d.length){var h=d.closest(".ui-accordion-header");a.active=h.length?h:d.closest(".ui-accordion-content").prev()}}a.active=a._findActive(a.active||b.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");a.active.next().addClass("ui-accordion-content-active");a._createIcons();a.resize();a.element.attr("role","tablist");a.headers.attr("role","tab").bind("keydown.accordion",
+function(f){return a._keydown(f)}).next().attr("role","tabpanel");a.headers.not(a.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide();a.active.length?a.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):a.headers.eq(0).attr("tabIndex",0);c.browser.safari||a.headers.find("a").attr("tabIndex",-1);b.event&&a.headers.bind(b.event.split(" ").join(".accordion ")+".accordion",function(f){a._clickHandler.call(a,f,this);f.preventDefault()})},_createIcons:function(){var a=
+this.options;if(a.icons){c("<span></span>").addClass("ui-icon "+a.icons.header).prependTo(this.headers);this.active.children(".ui-icon").toggleClass(a.icons.header).toggleClass(a.icons.headerSelected);this.element.addClass("ui-accordion-icons")}},_destroyIcons:function(){this.headers.children(".ui-icon").remove();this.element.removeClass("ui-accordion-icons")},destroy:function(){var a=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex");
+this.headers.find("a").removeAttr("tabIndex");this._destroyIcons();var b=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");if(a.autoHeight||a.fillHeight)b.css("height","");return c.Widget.prototype.destroy.call(this)},_setOption:function(a,b){c.Widget.prototype._setOption.apply(this,arguments);a=="active"&&this.activate(b);if(a=="icons"){this._destroyIcons();
+b&&this._createIcons()}if(a=="disabled")this.headers.add(this.headers.next())[b?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(a){if(!(this.options.disabled||a.altKey||a.ctrlKey)){var b=c.ui.keyCode,d=this.headers.length,h=this.headers.index(a.target),f=false;switch(a.keyCode){case b.RIGHT:case b.DOWN:f=this.headers[(h+1)%d];break;case b.LEFT:case b.UP:f=this.headers[(h-1+d)%d];break;case b.SPACE:case b.ENTER:this._clickHandler({target:a.target},a.target);
+a.preventDefault()}if(f){c(a.target).attr("tabIndex",-1);c(f).attr("tabIndex",0);f.focus();return false}return true}},resize:function(){var a=this.options,b;if(a.fillSpace){if(c.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}b=this.element.parent().height();c.browser.msie&&this.element.parent().css("overflow",d);this.headers.each(function(){b-=c(this).outerHeight(true)});this.headers.next().each(function(){c(this).height(Math.max(0,b-c(this).innerHeight()+
+c(this).height()))}).css("overflow","auto")}else if(a.autoHeight){b=0;this.headers.next().each(function(){b=Math.max(b,c(this).height("").height())}).height(b)}return this},activate:function(a){this.options.active=a;a=this._findActive(a)[0];this._clickHandler({target:a},a);return this},_findActive:function(a){return a?typeof a==="number"?this.headers.filter(":eq("+a+")"):this.headers.not(this.headers.not(a)):a===false?c([]):this.headers.filter(":eq(0)")},_clickHandler:function(a,b){var d=this.options;
+if(!d.disabled)if(a.target){a=c(a.currentTarget||b);b=a[0]===this.active[0];d.active=d.collapsible&&b?false:this.headers.index(a);if(!(this.running||!d.collapsible&&b)){var h=this.active;j=a.next();g=this.active.next();e={options:d,newHeader:b&&d.collapsible?c([]):a,oldHeader:this.active,newContent:b&&d.collapsible?c([]):j,oldContent:g};var f=this.headers.index(this.active[0])>this.headers.index(a[0]);this.active=b?c([]):a;this._toggle(j,g,e,b,f);h.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);
+if(!b){a.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);a.next().addClass("ui-accordion-content-active")}}}else if(d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var g=this.active.next(),
+e={options:d,newHeader:c([]),oldHeader:d.active,newContent:c([]),oldContent:g},j=this.active=c([]);this._toggle(j,g,e)}},_toggle:function(a,b,d,h,f){var g=this,e=g.options;g.toShow=a;g.toHide=b;g.data=d;var j=function(){if(g)return g._completed.apply(g,arguments)};g._trigger("changestart",null,g.data);g.running=b.size()===0?a.size():b.size();if(e.animated){d={};d=e.collapsible&&h?{toShow:c([]),toHide:b,complete:j,down:f,autoHeight:e.autoHeight||e.fillSpace}:{toShow:a,toHide:b,complete:j,down:f,autoHeight:e.autoHeight||
+e.fillSpace};if(!e.proxied)e.proxied=e.animated;if(!e.proxiedDuration)e.proxiedDuration=e.duration;e.animated=c.isFunction(e.proxied)?e.proxied(d):e.proxied;e.duration=c.isFunction(e.proxiedDuration)?e.proxiedDuration(d):e.proxiedDuration;h=c.ui.accordion.animations;var i=e.duration,k=e.animated;if(k&&!h[k]&&!c.easing[k])k="slide";h[k]||(h[k]=function(l){this.slide(l,{easing:k,duration:i||700})});h[k](d)}else{if(e.collapsible&&h)a.toggle();else{b.hide();a.show()}j(true)}b.prev().attr({"aria-expanded":"false",
+"aria-selected":"false",tabIndex:-1}).blur();a.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;if(!this.running){this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""});this.toHide.removeClass("ui-accordion-content-active");if(this.toHide.length)this.toHide.parent()[0].className=this.toHide.parent()[0].className;this._trigger("change",null,this.data)}}});c.extend(c.ui.accordion,{version:"1.8.16",
+animations:{slide:function(a,b){a=c.extend({easing:"swing",duration:300},a,b);if(a.toHide.size())if(a.toShow.size()){var d=a.toShow.css("overflow"),h=0,f={},g={},e;b=a.toShow;e=b[0].style.width;b.width(parseInt(b.parent().width(),10)-parseInt(b.css("paddingLeft"),10)-parseInt(b.css("paddingRight"),10)-(parseInt(b.css("borderLeftWidth"),10)||0)-(parseInt(b.css("borderRightWidth"),10)||0));c.each(["height","paddingTop","paddingBottom"],function(j,i){g[i]="hide";j=(""+c.css(a.toShow[0],i)).match(/^([\d+-.]+)(.*)$/);
+f[i]={value:j[1],unit:j[2]||"px"}});a.toShow.css({height:0,overflow:"hidden"}).show();a.toHide.filter(":hidden").each(a.complete).end().filter(":visible").animate(g,{step:function(j,i){if(i.prop=="height")h=i.end-i.start===0?0:(i.now-i.start)/(i.end-i.start);a.toShow[0].style[i.prop]=h*f[i.prop].value+f[i.prop].unit},duration:a.duration,easing:a.easing,complete:function(){a.autoHeight||a.toShow.css("height","");a.toShow.css({width:e,overflow:d});a.complete()}})}else a.toHide.animate({height:"hide",
+paddingTop:"hide",paddingBottom:"hide"},a);else a.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},a)},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1E3:200})}}})})(jQuery);
+;/*
+ * jQuery UI Autocomplete 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Autocomplete
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.widget.js
+ *	jquery.ui.position.js
+ */
+(function(d){var e=0;d.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:false,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var a=this,b=this.element[0].ownerDocument,g;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!(a.options.disabled||a.element.propAttr("readOnly"))){g=
+false;var f=d.ui.keyCode;switch(c.keyCode){case f.PAGE_UP:a._move("previousPage",c);break;case f.PAGE_DOWN:a._move("nextPage",c);break;case f.UP:a._move("previous",c);c.preventDefault();break;case f.DOWN:a._move("next",c);c.preventDefault();break;case f.ENTER:case f.NUMPAD_ENTER:if(a.menu.active){g=true;c.preventDefault()}case f.TAB:if(!a.menu.active)return;a.menu.select(c);break;case f.ESCAPE:a.element.val(a.term);a.close(c);break;default:clearTimeout(a.searching);a.searching=setTimeout(function(){if(a.term!=
+a.element.val()){a.selectedItem=null;a.search(null,c)}},a.options.delay);break}}}).bind("keypress.autocomplete",function(c){if(g){g=false;c.preventDefault()}}).bind("focus.autocomplete",function(){if(!a.options.disabled){a.selectedItem=null;a.previous=a.element.val()}}).bind("blur.autocomplete",function(c){if(!a.options.disabled){clearTimeout(a.searching);a.closing=setTimeout(function(){a.close(c);a._change(c)},150)}});this._initSource();this.response=function(){return a._response.apply(a,arguments)};
+this.menu=d("<ul></ul>").addClass("ui-autocomplete").appendTo(d(this.options.appendTo||"body",b)[0]).mousedown(function(c){var f=a.menu.element[0];d(c.target).closest(".ui-menu-item").length||setTimeout(function(){d(document).one("mousedown",function(h){h.target!==a.element[0]&&h.target!==f&&!d.ui.contains(f,h.target)&&a.close()})},1);setTimeout(function(){clearTimeout(a.closing)},13)}).menu({focus:function(c,f){f=f.item.data("item.autocomplete");false!==a._trigger("focus",c,{item:f})&&/^key/.test(c.originalEvent.type)&&
+a.element.val(f.value)},selected:function(c,f){var h=f.item.data("item.autocomplete"),i=a.previous;if(a.element[0]!==b.activeElement){a.element.focus();a.previous=i;setTimeout(function(){a.previous=i;a.selectedItem=h},1)}false!==a._trigger("select",c,{item:h})&&a.element.val(h.value);a.term=a.element.val();a.close(c);a.selectedItem=h},blur:function(){a.menu.element.is(":visible")&&a.element.val()!==a.term&&a.element.val(a.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu");
+d.fn.bgiframe&&this.menu.element.bgiframe()},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup");this.menu.element.remove();d.Widget.prototype.destroy.call(this)},_setOption:function(a,b){d.Widget.prototype._setOption.apply(this,arguments);a==="source"&&this._initSource();if(a==="appendTo")this.menu.element.appendTo(d(b||"body",this.element[0].ownerDocument)[0]);a==="disabled"&&
+b&&this.xhr&&this.xhr.abort()},_initSource:function(){var a=this,b,g;if(d.isArray(this.options.source)){b=this.options.source;this.source=function(c,f){f(d.ui.autocomplete.filter(b,c.term))}}else if(typeof this.options.source==="string"){g=this.options.source;this.source=function(c,f){a.xhr&&a.xhr.abort();a.xhr=d.ajax({url:g,data:c,dataType:"json",autocompleteRequest:++e,success:function(h){this.autocompleteRequest===e&&f(h)},error:function(){this.autocompleteRequest===e&&f([])}})}}else this.source=
+this.options.source},search:function(a,b){a=a!=null?a:this.element.val();this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==false)return this._search(a)},_search:function(a){this.pending++;this.element.addClass("ui-autocomplete-loading");this.source({term:a},this.response)},_response:function(a){if(!this.options.disabled&&a&&a.length){a=this._normalize(a);this._suggest(a);this._trigger("open")}else this.close();
+this.pending--;this.pending||this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing);if(this.menu.element.is(":visible")){this.menu.element.hide();this.menu.deactivate();this._trigger("close",a)}},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(a){if(a.length&&a[0].label&&a[0].value)return a;return d.map(a,function(b){if(typeof b==="string")return{label:b,value:b};return d.extend({label:b.label||
+b.value,value:b.value||b.label},b)})},_suggest:function(a){var b=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(b,a);this.menu.deactivate();this.menu.refresh();b.show();this._resizeMenu();b.position(d.extend({of:this.element},this.options.position));this.options.autoFocus&&this.menu.next(new d.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth(),this.element.outerWidth()))},_renderMenu:function(a,b){var g=this;
+d.each(b,function(c,f){g._renderItem(a,f)})},_renderItem:function(a,b){return d("<li></li>").data("item.autocomplete",b).append(d("<a></a>").text(b.label)).appendTo(a)},_move:function(a,b){if(this.menu.element.is(":visible"))if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term);this.menu.deactivate()}else this.menu[a](b);else this.search(null,b)},widget:function(){return this.menu.element}});d.extend(d.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,
+"\\$&")},filter:function(a,b){var g=new RegExp(d.ui.autocomplete.escapeRegex(b),"i");return d.grep(a,function(c){return g.test(c.label||c.value||c)})}})})(jQuery);
+(function(d){d.widget("ui.menu",{_create:function(){var e=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(a){if(d(a.target).closest(".ui-menu-item a").length){a.preventDefault();e.select(a)}});this.refresh()},refresh:function(){var e=this;this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem").children("a").addClass("ui-corner-all").attr("tabindex",
+-1).mouseenter(function(a){e.activate(a,d(this).parent())}).mouseleave(function(){e.deactivate()})},activate:function(e,a){this.deactivate();if(this.hasScroll()){var b=a.offset().top-this.element.offset().top,g=this.element.scrollTop(),c=this.element.height();if(b<0)this.element.scrollTop(g+b);else b>=c&&this.element.scrollTop(g+b-c+a.height())}this.active=a.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end();this._trigger("focus",e,{item:a})},deactivate:function(){if(this.active){this.active.children("a").removeClass("ui-state-hover").removeAttr("id");
+this._trigger("blur");this.active=null}},next:function(e){this.move("next",".ui-menu-item:first",e)},previous:function(e){this.move("prev",".ui-menu-item:last",e)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(e,a,b){if(this.active){e=this.active[e+"All"](".ui-menu-item").eq(0);e.length?this.activate(b,e):this.activate(b,this.element.children(a))}else this.activate(b,
+this.element.children(a))},nextPage:function(e){if(this.hasScroll())if(!this.active||this.last())this.activate(e,this.element.children(".ui-menu-item:first"));else{var a=this.active.offset().top,b=this.element.height(),g=this.element.children(".ui-menu-item").filter(function(){var c=d(this).offset().top-a-b+d(this).height();return c<10&&c>-10});g.length||(g=this.element.children(".ui-menu-item:last"));this.activate(e,g)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active||
+this.last()?":first":":last"))},previousPage:function(e){if(this.hasScroll())if(!this.active||this.first())this.activate(e,this.element.children(".ui-menu-item:last"));else{var a=this.active.offset().top,b=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var g=d(this).offset().top-a+b-d(this).height();return g<10&&g>-10});result.length||(result=this.element.children(".ui-menu-item:first"));this.activate(e,result)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active||
+this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[d.fn.prop?"prop":"attr"]("scrollHeight")},select:function(e){this._trigger("selected",e,{item:this.active})}})})(jQuery);
+;/*
+ * jQuery UI Button 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Button
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.widget.js
+ */
+(function(b){var h,i,j,g,l=function(){var a=b(this).find(":ui-button");setTimeout(function(){a.button("refresh")},1)},k=function(a){var c=a.name,e=a.form,f=b([]);if(c)f=e?b(e).find("[name='"+c+"']"):b("[name='"+c+"']",a.ownerDocument).filter(function(){return!this.form});return f};b.widget("ui.button",{options:{disabled:null,text:true,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",l);if(typeof this.options.disabled!==
+"boolean")this.options.disabled=this.element.propAttr("disabled");this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var a=this,c=this.options,e=this.type==="checkbox"||this.type==="radio",f="ui-state-hover"+(!e?" ui-state-active":"");if(c.label===null)c.label=this.buttonElement.html();if(this.element.is(":disabled"))c.disabled=true;this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role","button").bind("mouseenter.button",function(){if(!c.disabled){b(this).addClass("ui-state-hover");
+this===h&&b(this).addClass("ui-state-active")}}).bind("mouseleave.button",function(){c.disabled||b(this).removeClass(f)}).bind("click.button",function(d){if(c.disabled){d.preventDefault();d.stopImmediatePropagation()}});this.element.bind("focus.button",function(){a.buttonElement.addClass("ui-state-focus")}).bind("blur.button",function(){a.buttonElement.removeClass("ui-state-focus")});if(e){this.element.bind("change.button",function(){g||a.refresh()});this.buttonElement.bind("mousedown.button",function(d){if(!c.disabled){g=
+false;i=d.pageX;j=d.pageY}}).bind("mouseup.button",function(d){if(!c.disabled)if(i!==d.pageX||j!==d.pageY)g=true})}if(this.type==="checkbox")this.buttonElement.bind("click.button",function(){if(c.disabled||g)return false;b(this).toggleClass("ui-state-active");a.buttonElement.attr("aria-pressed",a.element[0].checked)});else if(this.type==="radio")this.buttonElement.bind("click.button",function(){if(c.disabled||g)return false;b(this).addClass("ui-state-active");a.buttonElement.attr("aria-pressed","true");
+var d=a.element[0];k(d).not(d).map(function(){return b(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")});else{this.buttonElement.bind("mousedown.button",function(){if(c.disabled)return false;b(this).addClass("ui-state-active");h=this;b(document).one("mouseup",function(){h=null})}).bind("mouseup.button",function(){if(c.disabled)return false;b(this).removeClass("ui-state-active")}).bind("keydown.button",function(d){if(c.disabled)return false;if(d.keyCode==b.ui.keyCode.SPACE||
+d.keyCode==b.ui.keyCode.ENTER)b(this).addClass("ui-state-active")}).bind("keyup.button",function(){b(this).removeClass("ui-state-active")});this.buttonElement.is("a")&&this.buttonElement.keyup(function(d){d.keyCode===b.ui.keyCode.SPACE&&b(this).click()})}this._setOption("disabled",c.disabled);this._resetButton()},_determineButtonType:function(){this.type=this.element.is(":checkbox")?"checkbox":this.element.is(":radio")?"radio":this.element.is("input")?"input":"button";if(this.type==="checkbox"||this.type===
+"radio"){var a=this.element.parents().filter(":last"),c="label[for='"+this.element.attr("id")+"']";this.buttonElement=a.find(c);if(!this.buttonElement.length){a=a.length?a.siblings():this.element.siblings();this.buttonElement=a.filter(c);if(!this.buttonElement.length)this.buttonElement=a.find(c)}this.element.addClass("ui-helper-hidden-accessible");(a=this.element.is(":checked"))&&this.buttonElement.addClass("ui-state-active");this.buttonElement.attr("aria-pressed",a)}else this.buttonElement=this.element},
+widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());this.hasTitle||this.buttonElement.removeAttr("title");
+b.Widget.prototype.destroy.call(this)},_setOption:function(a,c){b.Widget.prototype._setOption.apply(this,arguments);if(a==="disabled")c?this.element.propAttr("disabled",true):this.element.propAttr("disabled",false);else this._resetButton()},refresh:function(){var a=this.element.is(":disabled");a!==this.options.disabled&&this._setOption("disabled",a);if(this.type==="radio")k(this.element[0]).each(function(){b(this).is(":checked")?b(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
+"true"):b(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")});else if(this.type==="checkbox")this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false")},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var a=this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only"),
+c=b("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(a.empty()).text(),e=this.options.icons,f=e.primary&&e.secondary,d=[];if(e.primary||e.secondary){if(this.options.text)d.push("ui-button-text-icon"+(f?"s":e.primary?"-primary":"-secondary"));e.primary&&a.prepend("<span class='ui-button-icon-primary ui-icon "+e.primary+"'></span>");e.secondary&&a.append("<span class='ui-button-icon-secondary ui-icon "+e.secondary+"'></span>");if(!this.options.text){d.push(f?"ui-button-icons-only":
+"ui-button-icon-only");this.hasTitle||a.attr("title",c)}}else d.push("ui-button-text-only");a.addClass(d.join(" "))}}});b.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(a,c){a==="disabled"&&this.buttons.button("option",a,c);b.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){var a=this.element.css("direction")===
+"ltr";this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return b(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(a?"ui-corner-left":"ui-corner-right").end().filter(":last").addClass(a?"ui-corner-right":"ui-corner-left").end().end()},destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return b(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy");
+b.Widget.prototype.destroy.call(this)}})})(jQuery);
+;/*
+ * jQuery UI Dialog 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Dialog
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.widget.js
+ *  jquery.ui.button.js
+ *	jquery.ui.draggable.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.position.js
+ *	jquery.ui.resizable.js
+ */
+(function(c,l){var m={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},n={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true},o=c.attrFn||{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true,click:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,
+position:{my:"center",at:"center",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||"&#160;",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+
+b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&!i.isDefaultPrevented()&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),
+h=c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("<span></span>").addClass("ui-dialog-title").attr("id",
+e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");
+a.uiDialog.remove();a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!==
+b.uiDialog[0]){e=c(this).css("z-index");isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.scrollTop(),scrollLeft:d.element.scrollLeft()};c.ui.dialog.maxZ+=1;
+d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target===
+f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a,
+function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;var i=c('<button type="button"></button>').click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.each(h,function(j,k){if(j!=="click")j in o?i[j](k):i.attr(j,k)});c.fn.button&&i.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",
+handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition,
+originalSize:f.originalSize,position:f.position,size:f.size}}a=a===l?this.options.resizable:a;var d=this,e=d.options,g=d.uiDialog.css("position");a=typeof a==="string"?a:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:a,start:function(f,h){c(this).addClass("ui-dialog-resizing");d._trigger("resizeStart",f,b(h))},resize:function(f,h){d._trigger("resize",
+f,b(h))},stop:function(f,h){c(this).removeClass("ui-dialog-resizing");e.height=c(this).height();e.width=c(this).width();d._trigger("resizeStop",f,b(h));c.ui.dialog.overlay.resize()}}).css("position",g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(a){var b=[],d=[0,0],e;if(a){if(typeof a==="string"||typeof a==="object"&&"0"in a){b=a.split?a.split(" "):
+[a[0],a[1]];if(b.length===1)b[1]=b[0];c.each(["left","top"],function(g,f){if(+b[g]===b[g]){d[g]=b[g];b[g]=f}});a={my:b.join(" "),at:b.join(" "),offset:d.join(" ")}}a=c.extend({},c.ui.dialog.prototype.options.position,a)}else a=c.ui.dialog.prototype.options.position;(e=this.uiDialog.is(":visible"))||this.uiDialog.show();this.uiDialog.css({top:0,left:0}).position(c.extend({of:window},a));e||this.uiDialog.hide()},_setOptions:function(a){var b=this,d={},e=false;c.each(a,function(g,f){b._setOption(g,f);
+if(g in m)e=true;if(g in n)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"):
+e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||"&#160;"));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a=
+this.options,b,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height-
+b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.16",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),
+create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()<c.ui.dialog.overlay.maxZ)return false})},1);c(document).bind("keydown.dialog-overlay",function(d){if(a.options.closeOnEscape&&!d.isDefaultPrevented()&&d.keyCode&&d.keyCode===c.ui.keyCode.ESCAPE){a.close(d);d.preventDefault()}});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var b=(this.oldInstances.pop()||
+c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&
+c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a<b?c(window).height()+"px":a+"px"}else return c(document).height()+"px"},width:function(){var a,b;if(c.browser.msie){a=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth);b=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return a<b?c(window).width()+"px":a+"px"}else return c(document).width()+
+"px"},resize:function(){var a=c([]);c.each(c.ui.dialog.overlay.instances,function(){a=a.add(this)});a.css({width:0,height:0}).css({width:c.ui.dialog.overlay.width(),height:c.ui.dialog.overlay.height()})}});c.extend(c.ui.dialog.overlay.prototype,{destroy:function(){c.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);
+;/*
+ * jQuery UI Slider 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Slider
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.mouse.js
+ *	jquery.ui.widget.js
+ */
+(function(d){d.widget("ui.slider",d.ui.mouse,{widgetEventPrefix:"slide",options:{animate:false,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null},_create:function(){var a=this,b=this.options,c=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f=b.values&&b.values.length||1,e=[];this._mouseSliding=this._keySliding=false;this._animateOff=true;this._handleIndex=null;this._detectOrientation();this._mouseInit();this.element.addClass("ui-slider ui-slider-"+
+this.orientation+" ui-widget ui-widget-content ui-corner-all"+(b.disabled?" ui-slider-disabled ui-disabled":""));this.range=d([]);if(b.range){if(b.range===true){if(!b.values)b.values=[this._valueMin(),this._valueMin()];if(b.values.length&&b.values.length!==2)b.values=[b.values[0],b.values[0]]}this.range=d("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(b.range==="min"||b.range==="max"?" ui-slider-range-"+b.range:""))}for(var j=c.length;j<f;j+=1)e.push("<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>");
+this.handles=c.add(d(e.join("")).appendTo(a.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(g){g.preventDefault()}).hover(function(){b.disabled||d(this).addClass("ui-state-hover")},function(){d(this).removeClass("ui-state-hover")}).focus(function(){if(b.disabled)d(this).blur();else{d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");d(this).addClass("ui-state-focus")}}).blur(function(){d(this).removeClass("ui-state-focus")});this.handles.each(function(g){d(this).data("index.ui-slider-handle",
+g)});this.handles.keydown(function(g){var k=true,l=d(this).data("index.ui-slider-handle"),i,h,m;if(!a.options.disabled){switch(g.keyCode){case d.ui.keyCode.HOME:case d.ui.keyCode.END:case d.ui.keyCode.PAGE_UP:case d.ui.keyCode.PAGE_DOWN:case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:k=false;if(!a._keySliding){a._keySliding=true;d(this).addClass("ui-state-active");i=a._start(g,l);if(i===false)return}break}m=a.options.step;i=a.options.values&&a.options.values.length?
+(h=a.values(l)):(h=a.value());switch(g.keyCode){case d.ui.keyCode.HOME:h=a._valueMin();break;case d.ui.keyCode.END:h=a._valueMax();break;case d.ui.keyCode.PAGE_UP:h=a._trimAlignValue(i+(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.PAGE_DOWN:h=a._trimAlignValue(i-(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:if(i===a._valueMax())return;h=a._trimAlignValue(i+m);break;case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:if(i===a._valueMin())return;h=a._trimAlignValue(i-
+m);break}a._slide(g,l,h);return k}}).keyup(function(g){var k=d(this).data("index.ui-slider-handle");if(a._keySliding){a._keySliding=false;a._stop(g,k);a._change(g,k);d(this).removeClass("ui-state-active")}});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy();
+return this},_mouseCapture:function(a){var b=this.options,c,f,e,j,g;if(b.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:a.pageX,y:a.pageY});f=this._valueMax()-this._valueMin()+1;j=this;this.handles.each(function(k){var l=Math.abs(c-j.values(k));if(f>l){f=l;e=d(this);g=k}});if(b.range===true&&this.values(1)===b.min){g+=1;e=d(this.handles[g])}if(this._start(a,g)===false)return false;
+this._mouseSliding=true;j._handleIndex=g;e.addClass("ui-state-active").focus();b=e.offset();this._clickOffset=!d(a.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:a.pageX-b.left-e.width()/2,top:a.pageY-b.top-e.height()/2-(parseInt(e.css("borderTopWidth"),10)||0)-(parseInt(e.css("borderBottomWidth"),10)||0)+(parseInt(e.css("marginTop"),10)||0)};this.handles.hasClass("ui-state-hover")||this._slide(a,g,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(a){var b=
+this._normValueFromMouse({x:a.pageX,y:a.pageY});this._slide(a,this._handleIndex,b);return false},_mouseStop:function(a){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(a,this._handleIndex);this._change(a,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b;if(this.orientation==="horizontal"){b=
+this.elementSize.width;a=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{b=this.elementSize.height;a=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}b=a/b;if(b>1)b=1;if(b<0)b=0;if(this.orientation==="vertical")b=1-b;a=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+b*a)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);
+c.values=this.values()}return this._trigger("start",a,c)},_slide:function(a,b,c){var f;if(this.options.values&&this.options.values.length){f=this.values(b?0:1);if(this.options.values.length===2&&this.options.range===true&&(b===0&&c>f||b===1&&c<f))c=f;if(c!==this.values(b)){f=this.values();f[b]=c;a=this._trigger("slide",a,{handle:this.handles[b],value:c,values:f});this.values(b?0:1);a!==false&&this.values(b,c,true)}}else if(c!==this.value()){a=this._trigger("slide",a,{handle:this.handles[b],value:c});
+a!==false&&this.value(c)}},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);c.values=this.values()}this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);c.values=this.values()}this._trigger("change",a,c)}},value:function(a){if(arguments.length){this.options.value=
+this._trimAlignValue(a);this._refreshValue();this._change(null,0)}else return this._value()},values:function(a,b){var c,f,e;if(arguments.length>1){this.options.values[a]=this._trimAlignValue(b);this._refreshValue();this._change(null,a)}else if(arguments.length)if(d.isArray(arguments[0])){c=this.options.values;f=arguments[0];for(e=0;e<c.length;e+=1){c[e]=this._trimAlignValue(f[e]);this._change(null,e)}this._refreshValue()}else return this.options.values&&this.options.values.length?this._values(a):
+this.value();else return this._values()},_setOption:function(a,b){var c,f=0;if(d.isArray(this.options.values))f=this.options.values.length;d.Widget.prototype._setOption.apply(this,arguments);switch(a){case "disabled":if(b){this.handles.filter(".ui-state-focus").blur();this.handles.removeClass("ui-state-hover");this.handles.propAttr("disabled",true);this.element.addClass("ui-disabled")}else{this.handles.propAttr("disabled",false);this.element.removeClass("ui-disabled")}break;case "orientation":this._detectOrientation();
+this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();break;case "value":this._animateOff=true;this._refreshValue();this._change(null,0);this._animateOff=false;break;case "values":this._animateOff=true;this._refreshValue();for(c=0;c<f;c+=1)this._change(null,c);this._animateOff=false;break}},_value:function(){var a=this.options.value;return a=this._trimAlignValue(a)},_values:function(a){var b,c;if(arguments.length){b=this.options.values[a];
+return b=this._trimAlignValue(b)}else{b=this.options.values.slice();for(c=0;c<b.length;c+=1)b[c]=this._trimAlignValue(b[c]);return b}},_trimAlignValue:function(a){if(a<=this._valueMin())return this._valueMin();if(a>=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b;a=a-c;if(Math.abs(c)*2>=b)a+=c>0?b:-b;return parseFloat(a.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var a=
+this.options.range,b=this.options,c=this,f=!this._animateOff?b.animate:false,e,j={},g,k,l,i;if(this.options.values&&this.options.values.length)this.handles.each(function(h){e=(c.values(h)-c._valueMin())/(c._valueMax()-c._valueMin())*100;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";d(this).stop(1,1)[f?"animate":"css"](j,b.animate);if(c.options.range===true)if(c.orientation==="horizontal"){if(h===0)c.range.stop(1,1)[f?"animate":"css"]({left:e+"%"},b.animate);if(h===1)c.range[f?"animate":"css"]({width:e-
+g+"%"},{queue:false,duration:b.animate})}else{if(h===0)c.range.stop(1,1)[f?"animate":"css"]({bottom:e+"%"},b.animate);if(h===1)c.range[f?"animate":"css"]({height:e-g+"%"},{queue:false,duration:b.animate})}g=e});else{k=this.value();l=this._valueMin();i=this._valueMax();e=i!==l?(k-l)/(i-l)*100:0;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[f?"animate":"css"](j,b.animate);if(a==="min"&&this.orientation==="horizontal")this.range.stop(1,1)[f?"animate":"css"]({width:e+"%"},
+b.animate);if(a==="max"&&this.orientation==="horizontal")this.range[f?"animate":"css"]({width:100-e+"%"},{queue:false,duration:b.animate});if(a==="min"&&this.orientation==="vertical")this.range.stop(1,1)[f?"animate":"css"]({height:e+"%"},b.animate);if(a==="max"&&this.orientation==="vertical")this.range[f?"animate":"css"]({height:100-e+"%"},{queue:false,duration:b.animate})}}});d.extend(d.ui.slider,{version:"1.8.16"})})(jQuery);
+;/*
+ * jQuery UI Tabs 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Tabs
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ *	jquery.ui.widget.js
+ */
+(function(d,p){function u(){return++v}function w(){return++x}var v=0,x=0;d.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:false,cookie:null,collapsible:false,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(true)},_setOption:function(b,e){if(b=="selected")this.options.collapsible&&
+e==this.options.selected||this.select(e);else{this.options[b]=e;this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+u()},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+w());return d.cookie.apply(null,[b].concat(d.makeArray(arguments)))},_ui:function(b,e){return{tab:b,panel:e,index:this.anchors.index(b)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=
+d(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(b){function e(g,f){g.css("display","");!d.support.opacity&&f.opacity&&g[0].style.removeAttribute("filter")}var a=this,c=this.options,h=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=d(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return d("a",this)[0]});this.panels=d([]);this.anchors.each(function(g,f){var i=d(f).attr("href"),l=i.split("#")[0],q;if(l&&(l===location.toString().split("#")[0]||
+(q=d("base")[0])&&l===q.href)){i=f.hash;f.href=i}if(h.test(i))a.panels=a.panels.add(a.element.find(a._sanitizeSelector(i)));else if(i&&i!=="#"){d.data(f,"href.tabs",i);d.data(f,"load.tabs",i.replace(/#.*$/,""));i=a._tabId(f);f.href="#"+i;f=a.element.find("#"+i);if(!f.length){f=d(c.panelTemplate).attr("id",i).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(a.panels[g-1]||a.list);f.data("destroy.tabs",true)}a.panels=a.panels.add(f)}else c.disabled.push(g)});if(b){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all");
+this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.lis.addClass("ui-state-default ui-corner-top");this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");if(c.selected===p){location.hash&&this.anchors.each(function(g,f){if(f.hash==location.hash){c.selected=g;return false}});if(typeof c.selected!=="number"&&c.cookie)c.selected=parseInt(a._cookie(),10);if(typeof c.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length)c.selected=
+this.lis.index(this.lis.filter(".ui-tabs-selected"));c.selected=c.selected||(this.lis.length?0:-1)}else if(c.selected===null)c.selected=-1;c.selected=c.selected>=0&&this.anchors[c.selected]||c.selected<0?c.selected:0;c.disabled=d.unique(c.disabled.concat(d.map(this.lis.filter(".ui-state-disabled"),function(g){return a.lis.index(g)}))).sort();d.inArray(c.selected,c.disabled)!=-1&&c.disabled.splice(d.inArray(c.selected,c.disabled),1);this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active");
+if(c.selected>=0&&this.anchors.length){a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(c.selected).addClass("ui-tabs-selected ui-state-active");a.element.queue("tabs",function(){a._trigger("show",null,a._ui(a.anchors[c.selected],a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash))[0]))});this.load(c.selected)}d(window).bind("unload",function(){a.lis.add(a.anchors).unbind(".tabs");a.lis=a.anchors=a.panels=null})}else c.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"));
+this.element[c.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");c.cookie&&this._cookie(c.selected,c.cookie);b=0;for(var j;j=this.lis[b];b++)d(j)[d.inArray(b,c.disabled)!=-1&&!d(j).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");c.cache===false&&this.anchors.removeData("cache.tabs");this.lis.add(this.anchors).unbind(".tabs");if(c.event!=="mouseover"){var k=function(g,f){f.is(":not(.ui-state-disabled)")&&f.addClass("ui-state-"+g)},n=function(g,f){f.removeClass("ui-state-"+
+g)};this.lis.bind("mouseover.tabs",function(){k("hover",d(this))});this.lis.bind("mouseout.tabs",function(){n("hover",d(this))});this.anchors.bind("focus.tabs",function(){k("focus",d(this).closest("li"))});this.anchors.bind("blur.tabs",function(){n("focus",d(this).closest("li"))})}var m,o;if(c.fx)if(d.isArray(c.fx)){m=c.fx[0];o=c.fx[1]}else m=o=c.fx;var r=o?function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.hide().removeClass("ui-tabs-hide").animate(o,o.duration||"normal",
+function(){e(f,o);a._trigger("show",null,a._ui(g,f[0]))})}:function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");a._trigger("show",null,a._ui(g,f[0]))},s=m?function(g,f){f.animate(m,m.duration||"normal",function(){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");e(f,m);a.element.dequeue("tabs")})}:function(g,f){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");a.element.dequeue("tabs")};
+this.anchors.bind(c.event+".tabs",function(){var g=this,f=d(g).closest("li"),i=a.panels.filter(":not(.ui-tabs-hide)"),l=a.element.find(a._sanitizeSelector(g.hash));if(f.hasClass("ui-tabs-selected")&&!c.collapsible||f.hasClass("ui-state-disabled")||f.hasClass("ui-state-processing")||a.panels.filter(":animated").length||a._trigger("select",null,a._ui(this,l[0]))===false){this.blur();return false}c.selected=a.anchors.index(this);a.abort();if(c.collapsible)if(f.hasClass("ui-tabs-selected")){c.selected=
+-1;c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){s(g,i)}).dequeue("tabs");this.blur();return false}else if(!i.length){c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this));this.blur();return false}c.cookie&&a._cookie(c.selected,c.cookie);if(l.length){i.length&&a.element.queue("tabs",function(){s(g,i)});a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this))}else throw"jQuery UI Tabs: Mismatching fragment identifier.";
+d.browser.msie&&this.blur()});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(b){if(typeof b=="string")b=this.anchors.index(this.anchors.filter("[href$="+b+"]"));return b},destroy:function(){var b=this.options;this.abort();this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs");this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.anchors.each(function(){var e=
+d.data(this,"href.tabs");if(e)this.href=e;var a=d(this).unbind(".tabs");d.each(["href","load","cache"],function(c,h){a.removeData(h+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){d.data(this,"destroy.tabs")?d(this).remove():d(this).removeClass("ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide")});b.cookie&&this._cookie(null,b.cookie);return this},add:function(b,
+e,a){if(a===p)a=this.anchors.length;var c=this,h=this.options;e=d(h.tabTemplate.replace(/#\{href\}/g,b).replace(/#\{label\}/g,e));b=!b.indexOf("#")?b.replace("#",""):this._tabId(d("a",e)[0]);e.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var j=c.element.find("#"+b);j.length||(j=d(h.panelTemplate).attr("id",b).data("destroy.tabs",true));j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(a>=this.lis.length){e.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{e.insertBefore(this.lis[a]);
+j.insertBefore(this.panels[a])}h.disabled=d.map(h.disabled,function(k){return k>=a?++k:k});this._tabify();if(this.anchors.length==1){h.selected=0;e.addClass("ui-tabs-selected ui-state-active");j.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){c._trigger("show",null,c._ui(c.anchors[0],c.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[a],this.panels[a]));return this},remove:function(b){b=this._getIndex(b);var e=this.options,a=this.lis.eq(b).remove(),c=this.panels.eq(b).remove();
+if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1<this.anchors.length?1:-1));e.disabled=d.map(d.grep(e.disabled,function(h){return h!=b}),function(h){return h>=b?--h:h});this._tabify();this._trigger("remove",null,this._ui(a.find("a")[0],c[0]));return this},enable:function(b){b=this._getIndex(b);var e=this.options;if(d.inArray(b,e.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled");e.disabled=d.grep(e.disabled,function(a){return a!=b});this._trigger("enable",null,
+this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this},
+load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c,
+"cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this},
+url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.16"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k<a.anchors.length?k:0)},b);j&&j.stopPropagation()});e=a._unrotate||(a._unrotate=!e?function(j){j.clientX&&
+a.rotate(null)}:function(){t=c.selected;h()});if(b){this.element.bind("tabsshow",h);this.anchors.bind(c.event+".tabs",e);h()}else{clearTimeout(a.rotation);this.element.unbind("tabsshow",h);this.anchors.unbind(c.event+".tabs",e);delete this._rotate;delete this._unrotate}return this}})})(jQuery);
+;/*
+ * jQuery UI Datepicker 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Datepicker
+ *
+ * Depends:
+ *	jquery.ui.core.js
+ */
+(function(d,C){function M(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._inDialog=this._datepickerShowing=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass=
+"ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su",
+"Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",
+minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};d.extend(this._defaults,this.regional[""]);this.dpDiv=N(d('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function N(a){return a.bind("mouseout",
+function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");b.length&&b.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");if(!(d.datepicker._isDisabledDatepicker(J.inline?a.parent()[0]:J.input[0])||!b.length)){b.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");
+b.addClass("ui-state-hover");b.hasClass("ui-datepicker-prev")&&b.addClass("ui-datepicker-prev-hover");b.hasClass("ui-datepicker-next")&&b.addClass("ui-datepicker-next-hover")}})}function H(a,b){d.extend(a,b);for(var c in b)if(b[c]==null||b[c]==C)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.16"}});var B=(new Date).getTime(),J;d.extend(M.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},
+setDefaults:function(a){H(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a,b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g,
+"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:N(d('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",
+function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b);b.settings.disabled&&this._disableDatepicker(a)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();if(c){b.append=d('<span class="'+this._appendClass+'">'+c+"</span>");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c==
+"focus"||c=="both")a.focus(this._showDatepicker);if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("<img/>").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('<button type="button"></button>').addClass(this._triggerClass).html(f==""?c:d("<img/>").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker():
+d.datepicker._showDatepicker(a[0]);return false})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(f){for(var h=0,i=0,g=0;g<f.length;g++)if(f[g].length>h){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,
+b){var c=d(a);if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),true);this._updateDatepicker(b);this._updateAlternate(b);b.settings.disabled&&this._disableDatepicker(a);b.dpDiv.css("display","block")}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+=
+1;this._dialogInput=d('<input type="text" id="'+("dp"+this.uuid)+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}H(a.settings,e||{});b=b&&b.constructor==Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/
+2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b=
+d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a,"datepicker");if(e=="input"){c.append.remove();c.trigger.remove();b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=
+a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().removeClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=d(a),c=d.data(a,
+"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().addClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==
+a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return true;return false},_getInst:function(a){try{return d.data(a,"datepicker")}catch(b){throw"Missing instance data for this datepicker";}},_optionDatepicker:function(a,b,c){var e=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?d.extend({},d.datepicker._defaults):e?b=="all"?
+d.extend({},e.settings):this._get(e,b):null;var f=b||{};if(typeof b=="string"){f={};f[b]=c}if(e){this._curInst==e&&this._hideDatepicker();var h=this._getDateDatepicker(a,true),i=this._getMinMaxDate(e,"min"),g=this._getMinMaxDate(e,"max");H(e.settings,f);if(i!==null&&f.dateFormat!==C&&f.minDate===C)e.settings.minDate=this._formatDate(e,i);if(g!==null&&f.dateFormat!==C&&f.maxDate===C)e.settings.maxDate=this._formatDate(e,g);this._attachments(d(a),e);this._autoSize(e);this._setDate(e,h);this._updateAlternate(e);
+this._updateDatepicker(e)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){(a=this._getInst(a))&&this._updateDatepicker(a)},_setDateDatepicker:function(a,b){if(a=this._getInst(a)){this._setDate(a,b);this._updateDatepicker(a);this._updateAlternate(a)}},_getDateDatepicker:function(a,b){(a=this._getInst(a))&&!a.inline&&this._setDateFromField(a,b);return a?this._getDate(a):null},_doKeyDown:function(a){var b=d.datepicker._getInst(a.target),c=true,e=b.dpDiv.is(".ui-datepicker-rtl");
+b._keyEvent=true;if(d.datepicker._datepickerShowing)switch(a.keyCode){case 9:d.datepicker._hideDatepicker();c=false;break;case 13:c=d("td."+d.datepicker._dayOverClass+":not(."+d.datepicker._currentClass+")",b.dpDiv);c[0]&&d.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,c[0]);if(a=d.datepicker._get(b,"onSelect")){c=d.datepicker._formatDate(b);a.apply(b.input?b.input[0]:null,[c,b])}else d.datepicker._hideDatepicker();return false;case 27:d.datepicker._hideDatepicker();break;case 33:d.datepicker._adjustDate(a.target,
+a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 34:d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,"stepMonths"),"M");break;case 35:if(a.ctrlKey||a.metaKey)d.datepicker._clearDate(a.target);c=a.ctrlKey||a.metaKey;break;case 36:if(a.ctrlKey||a.metaKey)d.datepicker._gotoToday(a.target);c=a.ctrlKey||a.metaKey;break;case 37:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?+1:-1,"D");c=
+a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 38:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,-7,"D");c=a.ctrlKey||a.metaKey;break;case 39:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?-1:+1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,
+"stepMonths"),"M");break;case 40:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,+7,"D");c=a.ctrlKey||a.metaKey;break;default:c=false}else if(a.keyCode==36&&a.ctrlKey)d.datepicker._showDatepicker(this);else c=false;if(c){a.preventDefault();a.stopPropagation()}},_doKeyPress:function(a){var b=d.datepicker._getInst(a.target);if(d.datepicker._get(b,"constrainInput")){b=d.datepicker._possibleChars(d.datepicker._get(b,"dateFormat"));var c=String.fromCharCode(a.charCode==C?a.keyCode:a.charCode);
+return a.ctrlKey||a.metaKey||c<" "||!b||b.indexOf(c)>-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a);d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||a;if(a.nodeName.toLowerCase()!="input")a=d("input",
+a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);if(d.datepicker._curInst&&d.datepicker._curInst!=b){d.datepicker._datepickerShowing&&d.datepicker._triggerOnClose(d.datepicker._curInst);d.datepicker._curInst.dpDiv.stop(true,true)}var c=d.datepicker._get(b,"beforeShow");c=c?c.apply(a,[a,b]):{};if(c!==false){H(b.settings,c);b.lastVal=null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value=
+"";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos=null;b.dpDiv.empty();b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b);
+c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){var i=b.dpDiv.find("iframe.ui-datepicker-cover");if(i.length){var g=d.datepicker._getBorders(b.dpDiv);i.css({left:-g[0],top:-g[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex(d(a).zIndex()+1);d.datepicker._datepickerShowing=
+true;d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}}},_updateDatepicker:function(a){this.maxRows=4;var b=d.datepicker._getBorders(a.dpDiv);J=a;a.dpDiv.empty().append(this._generateHTML(a));var c=a.dpDiv.find("iframe.ui-datepicker-cover");c.length&&c.css({left:-b[0],top:-b[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()});
+a.dpDiv.find("."+this._dayOverClass+" a").mouseover();b=this._getNumberOfMonths(a);c=b[1];a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");c>1&&a.dpDiv.addClass("ui-datepicker-multi-"+c).css("width",17*c+"em");a.dpDiv[(b[0]!=1||b[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&
+!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var e=a.yearshtml;setTimeout(function(){e===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);e=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(),
+h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),j=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e-g):0);b.top-=Math.min(b.top,b.top+f>j&&j>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b=
+this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1||d.expr.filters.hidden(a));)a=a[b?"previousSibling":"nextSibling"];a=d(a).offset();return[a.left,a.top]},_triggerOnClose:function(a){var b=this._get(a,"onClose");if(b)b.apply(a.input?a.input[0]:null,[a.input?a.input.val():"",a])},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b);
+this._curInst=null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();d.datepicker._triggerOnClose(b);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},
+_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):
+0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[0]);e["selected"+(c=="M"?
+"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(a)},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay=d("a",e).html();f.selectedMonth=f.currentMonth=b;f.selectedYear=f.currentYear=c;this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){a=d(a);
+this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a);else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.input.focus();this._lastInput=null}},_updateAlternate:function(a){var b=this._get(a,"altField");
+if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?
+b.toString():b+"";if(b=="")return null;var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;e=typeof e!="string"?e:(new Date).getFullYear()%100+parseInt(e,10);for(var f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,j=c=-1,l=-1,u=-1,k=false,o=function(p){(p=A+1<a.length&&a.charAt(A+1)==p)&&A++;return p},m=function(p){var D=
+o(p);p=new RegExp("^\\d{1,"+(p=="@"?14:p=="!"?20:p=="y"&&D?4:p=="o"?3:2)+"}");p=b.substring(q).match(p);if(!p)throw"Missing number at position "+q;q+=p[0].length;return parseInt(p[0],10)},n=function(p,D,K){p=d.map(o(p)?K:D,function(w,x){return[[x,w]]}).sort(function(w,x){return-(w[1].length-x[1].length)});var E=-1;d.each(p,function(w,x){w=x[1];if(b.substr(q,w.length).toLowerCase()==w.toLowerCase()){E=x[0];q+=w.length;return false}});if(E!=-1)return E+1;else throw"Unknown name at position "+q;},s=
+function(){if(b.charAt(q)!=a.charAt(A))throw"Unexpected literal at position "+q;q++},q=0,A=0;A<a.length;A++)if(k)if(a.charAt(A)=="'"&&!o("'"))k=false;else s();else switch(a.charAt(A)){case "d":l=m("d");break;case "D":n("D",f,h);break;case "o":u=m("o");break;case "m":j=m("m");break;case "M":j=n("M",i,g);break;case "y":c=m("y");break;case "@":var v=new Date(m("@"));c=v.getFullYear();j=v.getMonth()+1;l=v.getDate();break;case "!":v=new Date((m("!")-this._ticksTo1970)/1E4);c=v.getFullYear();j=v.getMonth()+
+1;l=v.getDate();break;case "'":if(o("'"))s();else k=true;break;default:s()}if(q<b.length)throw"Extra/unparsed characters found in date: "+b.substring(q);if(c==-1)c=(new Date).getFullYear();else if(c<100)c+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c<=e?0:-100);if(u>-1){j=1;l=u;do{e=this._getDaysInMonth(c,j-1);if(l<=e)break;j++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,j-1,l));if(v.getFullYear()!=c||v.getMonth()+1!=j||v.getDate()!=l)throw"Invalid date";return v},ATOM:"yy-mm-dd",
+COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1E7,formatDate:function(a,b,c){if(!b)return"";var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames:
+null)||this._defaults.monthNames;var i=function(o){(o=k+1<a.length&&a.charAt(k+1)==o)&&k++;return o},g=function(o,m,n){m=""+m;if(i(o))for(;m.length<n;)m="0"+m;return m},j=function(o,m,n,s){return i(o)?s[m]:n[m]},l="",u=false;if(b)for(var k=0;k<a.length;k++)if(u)if(a.charAt(k)=="'"&&!i("'"))u=false;else l+=a.charAt(k);else switch(a.charAt(k)){case "d":l+=g("d",b.getDate(),2);break;case "D":l+=j("D",b.getDay(),e,f);break;case "o":l+=g("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-
+(new Date(b.getFullYear(),0,0)).getTime())/864E5),3);break;case "m":l+=g("m",b.getMonth()+1,2);break;case "M":l+=j("M",b.getMonth(),h,c);break;case "y":l+=i("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case "@":l+=b.getTime();break;case "!":l+=b.getTime()*1E4+this._ticksTo1970;break;case "'":if(i("'"))l+="'";else u=true;break;default:l+=a.charAt(k)}return l},_possibleChars:function(a){for(var b="",c=false,e=function(h){(h=f+1<a.length&&a.charAt(f+1)==h)&&f++;return h},f=
+0;f<a.length;f++)if(c)if(a.charAt(f)=="'"&&!e("'"))c=false;else b+=a.charAt(f);else switch(a.charAt(f)){case "d":case "m":case "y":case "@":b+="0123456789";break;case "D":case "M":return null;case "'":if(e("'"))b+="'";else c=true;break;default:b+=a.charAt(f)}return b},_get:function(a,b){return a.settings[b]!==C?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),e=a.lastVal=a.input?a.input.val():null,f,h;f=h=this._getDefaultDate(a);
+var i=this._getFormatConfig(a);try{f=this.parseDate(c,e,i)||h}catch(g){this.log(g);e=b?"":e}a.selectedDay=f.getDate();a.drawMonth=a.selectedMonth=f.getMonth();a.drawYear=a.selectedYear=f.getFullYear();a.currentDay=e?f.getDate():0;a.currentMonth=e?f.getMonth():0;a.currentYear=e?f.getFullYear():0;this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var e=function(h){var i=new Date;
+i.setDate(i.getDate()+h);return i},f=function(h){try{return d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),h,d.datepicker._getFormatConfig(a))}catch(i){}var g=(h.toLowerCase().match(/^c/)?d.datepicker._getDate(a):null)||new Date,j=g.getFullYear(),l=g.getMonth();g=g.getDate();for(var u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,k=u.exec(h);k;){switch(k[2]||"d"){case "d":case "D":g+=parseInt(k[1],10);break;case "w":case "W":g+=parseInt(k[1],10)*7;break;case "m":case "M":l+=parseInt(k[1],10);g=
+Math.min(g,d.datepicker._getDaysInMonth(j,l));break;case "y":case "Y":j+=parseInt(k[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(j,l));break}k=u.exec(h)}return new Date(j,l,g)};if(b=(b=b==null||b===""?c:typeof b=="string"?f(b):typeof b=="number"?isNaN(b)?c:e(b):new Date(b.getTime()))&&b.toString()=="Invalid Date"?c:b){b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0)}return this._daylightSavingAdjust(b)},_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()>
+12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||a.input&&
+a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),j=this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay?
+new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),k=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=k&&n<k?k:n;this._daylightSavingAdjust(new Date(m,g,1))>n;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-j,1)),this._getFormatConfig(a));
+n=this._canAdjustMonth(a,-1,m,g)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+B+".datepicker._adjustDate('#"+a.id+"', -"+j+", 'M');\" title=\""+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>":f?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>";var s=this._get(a,"nextText");s=!h?s:this.formatDate(s,this._daylightSavingAdjust(new Date(m,
+g+j,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+B+".datepicker._adjustDate('#"+a.id+"', +"+j+", 'M');\" title=\""+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":f?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>";j=this._get(a,"currentText");s=this._get(a,"gotoCurrent")&&
+a.currentDay?u:b;j=!h?j:this.formatDate(j,s,this._getFormatConfig(a));h=!a.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+B+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>":"";e=e?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?h:"")+(this._isInRange(a,s)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+
+B+".datepicker._gotoToday('#"+a.id+"');\">"+j+"</button>":"")+(c?"":h)+"</div>":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;j=this._get(a,"showWeek");s=this._get(a,"dayNames");this._get(a,"dayNamesShort");var q=this._get(a,"dayNamesMin"),A=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),D=this._get(a,"showOtherMonths"),K=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var E=this._getDefaultDate(a),w="",x=0;x<i[0];x++){var O=
+"";this.maxRows=4;for(var G=0;G<i[1];G++){var P=this._daylightSavingAdjust(new Date(m,g,a.selectedDay)),t=" ui-corner-all",y="";if(l){y+='<div class="ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:y+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:y+=" ui-datepicker-group-middle";t="";break}y+='">'}y+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+t+'">'+(/all|left/.test(t)&&
+x==0?c?f:n:"")+(/all|right/.test(t)&&x==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,k,o,x>0||G>0,A,v)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var z=j?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(t=0;t<7;t++){var r=(t+h)%7;z+="<th"+((t+h+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+s[r]+'">'+q[r]+"</span></th>"}y+=z+"</tr></thead><tbody>";z=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay,
+z);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;z=Math.ceil((t+z)/7);this.maxRows=z=l?this.maxRows>z?this.maxRows:z:z;r=this._daylightSavingAdjust(new Date(m,g,1-t));for(var Q=0;Q<z;Q++){y+="<tr>";var R=!j?"":'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(r)+"</td>";for(t=0;t<7;t++){var I=p?p.apply(a.input?a.input[0]:null,[r]):[true,""],F=r.getMonth()!=g,L=F&&!K||!I[0]||k&&r<k||o&&r>o;R+='<td class="'+((t+h+6)%7>=5?" ui-datepicker-week-end":"")+(F?" ui-datepicker-other-month":"")+(r.getTime()==
+P.getTime()&&g==a.selectedMonth&&a._keyEvent||E.getTime()==r.getTime()&&E.getTime()==P.getTime()?" "+this._dayOverClass:"")+(L?" "+this._unselectableClass+" ui-state-disabled":"")+(F&&!D?"":" "+I[1]+(r.getTime()==u.getTime()?" "+this._currentClass:"")+(r.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!F||D)&&I[2]?' title="'+I[2]+'"':"")+(L?"":' onclick="DP_jQuery_'+B+".datepicker._selectDay('#"+a.id+"',"+r.getMonth()+","+r.getFullYear()+', this);return false;"')+">"+(F&&!D?"&#xa0;":L?'<span class="ui-state-default">'+
+r.getDate()+"</span>":'<a class="ui-state-default'+(r.getTime()==b.getTime()?" ui-state-highlight":"")+(r.getTime()==u.getTime()?" ui-state-active":"")+(F?" ui-priority-secondary":"")+'" href="#">'+r.getDate()+"</a>")+"</td>";r.setDate(r.getDate()+1);r=this._daylightSavingAdjust(r)}y+=R+"</tr>"}g++;if(g>11){g=0;m++}y+="</tbody></table>"+(l?"</div>"+(i[0]>0&&G==i[1]-1?'<div class="ui-datepicker-row-break"></div>':""):"");O+=y}w+=O}w+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':
+"");a._keyEvent=false;return w},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var j=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),k='<div class="ui-datepicker-title">',o="";if(h||!j)o+='<span class="ui-datepicker-month">'+i[b]+"</span>";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+B+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" >";for(var n=0;n<12;n++)if((!i||n>=e.getMonth())&&
+(!m||n<=f.getMonth()))o+='<option value="'+n+'"'+(n==b?' selected="selected"':"")+">"+g[n]+"</option>";o+="</select>"}u||(k+=o+(h||!(j&&l)?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(h||!l)k+='<span class="ui-datepicker-year">'+c+"</span>";else{g=this._get(a,"yearRange").split(":");var s=(new Date).getFullYear();i=function(q){q=q.match(/c[+-].*/)?c+parseInt(q.substring(1),10):q.match(/[+-].*/)?s+parseInt(q,10):parseInt(q,10);return isNaN(q)?s:q};b=i(g[0]);g=Math.max(b,i(g[1]||""));b=e?Math.max(b,
+e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+B+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" >";b<=g;b++)a.yearshtml+='<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";a.yearshtml+="</select>";k+=a.yearshtml;a.yearshtml=null}}k+=this._get(a,"yearSuffix");if(u)k+=(h||!(j&&l)?"&#xa0;":"")+o;k+="</div>";return k},_adjustInstDate:function(a,b,c){var e=a.drawYear+(c=="Y"?b:0),f=a.drawMonth+
+(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");b=c&&b<c?c:b;return b=a&&b>a?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");if(b)b.apply(a.input?
+a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c,
+e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,
+"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=function(a){if(!this.length)return this;
+if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));return this.each(function(){typeof a==
+"string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new M;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.16";window["DP_jQuery_"+B]=d})(jQuery);
+;/*
+ * jQuery UI Progressbar 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Progressbar
+ *
+ * Depends:
+ *   jquery.ui.core.js
+ *   jquery.ui.widget.js
+ */
+(function(b,d){b.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()});this.valueDiv=b("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element);this.oldValue=this._value();this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");
+this.valueDiv.remove();b.Widget.prototype.destroy.apply(this,arguments)},value:function(a){if(a===d)return this._value();this._setOption("value",a);return this},_setOption:function(a,c){if(a==="value"){this.options.value=c;this._refreshValue();this._value()===this.options.max&&this._trigger("complete")}b.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;if(typeof a!=="number")a=0;return Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100*
+this._value()/this.options.max},_refreshValue:function(){var a=this.value(),c=this._percentage();if(this.oldValue!==a){this.oldValue=a;this._trigger("change")}this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(c.toFixed(0)+"%");this.element.attr("aria-valuenow",a)}});b.extend(b.ui.progressbar,{version:"1.8.16"})})(jQuery);
+;/*
+ * jQuery UI Effects 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/
+ */
+jQuery.effects||function(f,j){function m(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1],
+16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return n.transparent;return n[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return m(b)}function o(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,
+a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function p(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d=
+a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function l(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor",
+"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=m(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var n={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,
+0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,
+211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},q=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b,
+d){if(f.isFunction(b)){d=b;b=null}return this.queue(function(){var e=f(this),g=e.attr("style")||" ",h=p(o.call(this)),r,v=e.attr("class");f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});r=p(o.call(this));e.attr("class",v);e.animate(u(h,r),{queue:false,duration:a,easing:b,complete:function(){f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments);f.dequeue(this)}})})};
+f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this,
+[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.16",save:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])},restore:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))},setMode:function(c,a){if(a=="toggle")a=c.is(":hidden")?"show":"hide";return a},getBaseline:function(c,a){var b;switch(c[0]){case "top":b=
+0;break;case "middle":b=0.5;break;case "bottom":b=1;break;default:b=c[0]/a.height}switch(c[1]){case "left":c=0;break;case "center":c=0.5;break;case "right":c=1;break;default:c=c[1]/a.width}return{x:c,y:b}},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent();var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),
+d=document.activeElement;c.wrap(b);if(c[0]===d||f.contains(c[0],d))f(d).focus();b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(e,g){a[g]=c.css(g);if(isNaN(parseInt(a[g],10)))a[g]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){var a,b=document.activeElement;
+if(c.parent().is(".ui-effects-wrapper")){a=c.parent().replaceWith(c);if(c[0]===b||f.contains(c[0],b))f(b).focus();return a}return c},setTransition:function(c,a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)});
+return d.call(this,b)},_show:f.fn.show,show:function(c){if(l(c))return this._show.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(l(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(l(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this,
+arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),b=[];f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/
+2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,a,b,d,e){return d*((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b,
+d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c,
+a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==e)return b+d;if((a/=e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b,
+d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b},easeOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*a)*Math.sin((a*e-c)*2*Math.PI/g)+d+b},easeInOutElastic:function(c,a,b,d,e){c=1.70158;var g=
+0,h=d;if(a==0)return b;if((a/=e/2)==2)return b+d;g||(g=e*0.3*1.5);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);if(a<1)return-0.5*h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)+b;return h*Math.pow(2,-10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)*0.5+d+b},easeInBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*(a/=e)*a*((g+1)*a-g)+b},easeOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*((a=a/e-1)*a*((g+1)*a+g)+1)+b},easeInOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;
+if((a/=e/2)<1)return d/2*a*a*(((g*=1.525)+1)*a-g)+b;return d/2*((a-=2)*a*(((g*=1.525)+1)*a+g)+2)+b},easeInBounce:function(c,a,b,d,e){return d-f.easing.easeOutBounce(c,e-a,0,d,e)+b},easeOutBounce:function(c,a,b,d,e){return(a/=e)<1/2.75?d*7.5625*a*a+b:a<2/2.75?d*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?d*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:d*(7.5625*(a-=2.625/2.75)*a+0.984375)+b},easeInOutBounce:function(c,a,b,d,e){if(a<e/2)return f.easing.easeInBounce(c,a*2,0,d,e)*0.5+b;return f.easing.easeOutBounce(c,
+a*2-e,0,d,e)*0.5+d*0.5+b}})}(jQuery);
+;/*
+ * jQuery UI Effects Blind 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Blind
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(b){b.effects.blind=function(c){return this.queue(function(){var a=b(this),g=["position","top","bottom","left","right"],f=b.effects.setMode(a,c.options.mode||"hide"),d=c.options.direction||"vertical";b.effects.save(a,g);a.show();var e=b.effects.createWrapper(a).css({overflow:"hidden"}),h=d=="vertical"?"height":"width";d=d=="vertical"?e.height():e.width();f=="show"&&e.css(h,0);var i={};i[h]=f=="show"?d:0;e.animate(i,c.duration,c.options.easing,function(){f=="hide"&&a.hide();b.effects.restore(a,
+g);b.effects.removeWrapper(a);c.callback&&c.callback.apply(a[0],arguments);a.dequeue()})})}})(jQuery);
+;/*
+ * jQuery UI Effects Bounce 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Bounce
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(e){e.effects.bounce=function(b){return this.queue(function(){var a=e(this),l=["position","top","bottom","left","right"],h=e.effects.setMode(a,b.options.mode||"effect"),d=b.options.direction||"up",c=b.options.distance||20,m=b.options.times||5,i=b.duration||250;/show|hide/.test(h)&&l.push("opacity");e.effects.save(a,l);a.show();e.effects.createWrapper(a);var f=d=="up"||d=="down"?"top":"left";d=d=="up"||d=="left"?"pos":"neg";c=b.options.distance||(f=="top"?a.outerHeight({margin:true})/3:a.outerWidth({margin:true})/
+3);if(h=="show")a.css("opacity",0).css(f,d=="pos"?-c:c);if(h=="hide")c/=m*2;h!="hide"&&m--;if(h=="show"){var g={opacity:1};g[f]=(d=="pos"?"+=":"-=")+c;a.animate(g,i/2,b.options.easing);c/=2;m--}for(g=0;g<m;g++){var j={},k={};j[f]=(d=="pos"?"-=":"+=")+c;k[f]=(d=="pos"?"+=":"-=")+c;a.animate(j,i/2,b.options.easing).animate(k,i/2,b.options.easing);c=h=="hide"?c*2:c/2}if(h=="hide"){g={opacity:0};g[f]=(d=="pos"?"-=":"+=")+c;a.animate(g,i/2,b.options.easing,function(){a.hide();e.effects.restore(a,l);e.effects.removeWrapper(a);
+b.callback&&b.callback.apply(this,arguments)})}else{j={};k={};j[f]=(d=="pos"?"-=":"+=")+c;k[f]=(d=="pos"?"+=":"-=")+c;a.animate(j,i/2,b.options.easing).animate(k,i/2,b.options.easing,function(){e.effects.restore(a,l);e.effects.removeWrapper(a);b.callback&&b.callback.apply(this,arguments)})}a.queue("fx",function(){a.dequeue()});a.dequeue()})}})(jQuery);
+;/*
+ * jQuery UI Effects Clip 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Clip
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(b){b.effects.clip=function(e){return this.queue(function(){var a=b(this),i=["position","top","bottom","left","right","height","width"],f=b.effects.setMode(a,e.options.mode||"hide"),c=e.options.direction||"vertical";b.effects.save(a,i);a.show();var d=b.effects.createWrapper(a).css({overflow:"hidden"});d=a[0].tagName=="IMG"?d:a;var g={size:c=="vertical"?"height":"width",position:c=="vertical"?"top":"left"};c=c=="vertical"?d.height():d.width();if(f=="show"){d.css(g.size,0);d.css(g.position,
+c/2)}var h={};h[g.size]=f=="show"?c:0;h[g.position]=f=="show"?0:c/2;d.animate(h,{queue:false,duration:e.duration,easing:e.options.easing,complete:function(){f=="hide"&&a.hide();b.effects.restore(a,i);b.effects.removeWrapper(a);e.callback&&e.callback.apply(a[0],arguments);a.dequeue()}})})}})(jQuery);
+;/*
+ * jQuery UI Effects Drop 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Drop
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(c){c.effects.drop=function(d){return this.queue(function(){var a=c(this),h=["position","top","bottom","left","right","opacity"],e=c.effects.setMode(a,d.options.mode||"hide"),b=d.options.direction||"left";c.effects.save(a,h);a.show();c.effects.createWrapper(a);var f=b=="up"||b=="down"?"top":"left";b=b=="up"||b=="left"?"pos":"neg";var g=d.options.distance||(f=="top"?a.outerHeight({margin:true})/2:a.outerWidth({margin:true})/2);if(e=="show")a.css("opacity",0).css(f,b=="pos"?-g:g);var i={opacity:e==
+"show"?1:0};i[f]=(e=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+g;a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){e=="hide"&&a.hide();c.effects.restore(a,h);c.effects.removeWrapper(a);d.callback&&d.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
+;/*
+ * jQuery UI Effects Explode 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Explode
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(j){j.effects.explode=function(a){return this.queue(function(){var c=a.options.pieces?Math.round(Math.sqrt(a.options.pieces)):3,d=a.options.pieces?Math.round(Math.sqrt(a.options.pieces)):3;a.options.mode=a.options.mode=="toggle"?j(this).is(":visible")?"hide":"show":a.options.mode;var b=j(this).show().css("visibility","hidden"),g=b.offset();g.top-=parseInt(b.css("marginTop"),10)||0;g.left-=parseInt(b.css("marginLeft"),10)||0;for(var h=b.outerWidth(true),i=b.outerHeight(true),e=0;e<c;e++)for(var f=
+0;f<d;f++)b.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-f*(h/d),top:-e*(i/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:h/d,height:i/c,left:g.left+f*(h/d)+(a.options.mode=="show"?(f-Math.floor(d/2))*(h/d):0),top:g.top+e*(i/c)+(a.options.mode=="show"?(e-Math.floor(c/2))*(i/c):0),opacity:a.options.mode=="show"?0:1}).animate({left:g.left+f*(h/d)+(a.options.mode=="show"?0:(f-Math.floor(d/2))*(h/d)),top:g.top+
+e*(i/c)+(a.options.mode=="show"?0:(e-Math.floor(c/2))*(i/c)),opacity:a.options.mode=="show"?1:0},a.duration||500);setTimeout(function(){a.options.mode=="show"?b.css({visibility:"visible"}):b.css({visibility:"visible"}).hide();a.callback&&a.callback.apply(b[0]);b.dequeue();j("div.ui-effects-explode").remove()},a.duration||500)})}})(jQuery);
+;/*
+ * jQuery UI Effects Fade 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Fade
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(b){b.effects.fade=function(a){return this.queue(function(){var c=b(this),d=b.effects.setMode(c,a.options.mode||"hide");c.animate({opacity:d},{queue:false,duration:a.duration,easing:a.options.easing,complete:function(){a.callback&&a.callback.apply(this,arguments);c.dequeue()}})})}})(jQuery);
+;/*
+ * jQuery UI Effects Fold 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Fold
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(c){c.effects.fold=function(a){return this.queue(function(){var b=c(this),j=["position","top","bottom","left","right"],d=c.effects.setMode(b,a.options.mode||"hide"),g=a.options.size||15,h=!!a.options.horizFirst,k=a.duration?a.duration/2:c.fx.speeds._default/2;c.effects.save(b,j);b.show();var e=c.effects.createWrapper(b).css({overflow:"hidden"}),f=d=="show"!=h,l=f?["width","height"]:["height","width"];f=f?[e.width(),e.height()]:[e.height(),e.width()];var i=/([0-9]+)%/.exec(g);if(i)g=parseInt(i[1],
+10)/100*f[d=="hide"?0:1];if(d=="show")e.css(h?{height:0,width:g}:{height:g,width:0});h={};i={};h[l[0]]=d=="show"?f[0]:g;i[l[1]]=d=="show"?f[1]:0;e.animate(h,k,a.options.easing).animate(i,k,a.options.easing,function(){d=="hide"&&b.hide();c.effects.restore(b,j);c.effects.removeWrapper(b);a.callback&&a.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery);
+;/*
+ * jQuery UI Effects Highlight 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Highlight
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(b){b.effects.highlight=function(c){return this.queue(function(){var a=b(this),e=["backgroundImage","backgroundColor","opacity"],d=b.effects.setMode(a,c.options.mode||"show"),f={backgroundColor:a.css("backgroundColor")};if(d=="hide")f.opacity=0;b.effects.save(a,e);a.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:false,duration:c.duration,easing:c.options.easing,complete:function(){d=="hide"&&a.hide();b.effects.restore(a,e);d=="show"&&!b.support.opacity&&
+this.style.removeAttribute("filter");c.callback&&c.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
+;/*
+ * jQuery UI Effects Pulsate 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Pulsate
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(d){d.effects.pulsate=function(a){return this.queue(function(){var b=d(this),c=d.effects.setMode(b,a.options.mode||"show");times=(a.options.times||5)*2-1;duration=a.duration?a.duration/2:d.fx.speeds._default/2;isVisible=b.is(":visible");animateTo=0;if(!isVisible){b.css("opacity",0).show();animateTo=1}if(c=="hide"&&isVisible||c=="show"&&!isVisible)times--;for(c=0;c<times;c++){b.animate({opacity:animateTo},duration,a.options.easing);animateTo=(animateTo+1)%2}b.animate({opacity:animateTo},duration,
+a.options.easing,function(){animateTo==0&&b.hide();a.callback&&a.callback.apply(this,arguments)});b.queue("fx",function(){b.dequeue()}).dequeue()})}})(jQuery);
+;/*
+ * jQuery UI Effects Scale 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Scale
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(c){c.effects.puff=function(b){return this.queue(function(){var a=c(this),e=c.effects.setMode(a,b.options.mode||"hide"),g=parseInt(b.options.percent,10)||150,h=g/100,i={height:a.height(),width:a.width()};c.extend(b.options,{fade:true,mode:e,percent:e=="hide"?g:100,from:e=="hide"?i:{height:i.height*h,width:i.width*h}});a.effect("scale",b.options,b.duration,b.callback);a.dequeue()})};c.effects.scale=function(b){return this.queue(function(){var a=c(this),e=c.extend(true,{},b.options),g=c.effects.setMode(a,
+b.options.mode||"effect"),h=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:g=="hide"?0:100),i=b.options.direction||"both",f=b.options.origin;if(g!="effect"){e.origin=f||["middle","center"];e.restore=true}f={height:a.height(),width:a.width()};a.from=b.options.from||(g=="show"?{height:0,width:0}:f);h={y:i!="horizontal"?h/100:1,x:i!="vertical"?h/100:1};a.to={height:f.height*h.y,width:f.width*h.x};if(b.options.fade){if(g=="show"){a.from.opacity=0;a.to.opacity=1}if(g=="hide"){a.from.opacity=
+1;a.to.opacity=0}}e.from=a.from;e.to=a.to;e.mode=g;a.effect("size",e,b.duration,b.callback);a.dequeue()})};c.effects.size=function(b){return this.queue(function(){var a=c(this),e=["position","top","bottom","left","right","width","height","overflow","opacity"],g=["position","top","bottom","left","right","overflow","opacity"],h=["width","height","overflow"],i=["fontSize"],f=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],k=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],
+p=c.effects.setMode(a,b.options.mode||"effect"),n=b.options.restore||false,m=b.options.scale||"both",l=b.options.origin,j={height:a.height(),width:a.width()};a.from=b.options.from||j;a.to=b.options.to||j;if(l){l=c.effects.getBaseline(l,j);a.from.top=(j.height-a.from.height)*l.y;a.from.left=(j.width-a.from.width)*l.x;a.to.top=(j.height-a.to.height)*l.y;a.to.left=(j.width-a.to.width)*l.x}var d={from:{y:a.from.height/j.height,x:a.from.width/j.width},to:{y:a.to.height/j.height,x:a.to.width/j.width}};
+if(m=="box"||m=="both"){if(d.from.y!=d.to.y){e=e.concat(f);a.from=c.effects.setTransition(a,f,d.from.y,a.from);a.to=c.effects.setTransition(a,f,d.to.y,a.to)}if(d.from.x!=d.to.x){e=e.concat(k);a.from=c.effects.setTransition(a,k,d.from.x,a.from);a.to=c.effects.setTransition(a,k,d.to.x,a.to)}}if(m=="content"||m=="both")if(d.from.y!=d.to.y){e=e.concat(i);a.from=c.effects.setTransition(a,i,d.from.y,a.from);a.to=c.effects.setTransition(a,i,d.to.y,a.to)}c.effects.save(a,n?e:g);a.show();c.effects.createWrapper(a);
+a.css("overflow","hidden").css(a.from);if(m=="content"||m=="both"){f=f.concat(["marginTop","marginBottom"]).concat(i);k=k.concat(["marginLeft","marginRight"]);h=e.concat(f).concat(k);a.find("*[width]").each(function(){child=c(this);n&&c.effects.save(child,h);var o={height:child.height(),width:child.width()};child.from={height:o.height*d.from.y,width:o.width*d.from.x};child.to={height:o.height*d.to.y,width:o.width*d.to.x};if(d.from.y!=d.to.y){child.from=c.effects.setTransition(child,f,d.from.y,child.from);
+child.to=c.effects.setTransition(child,f,d.to.y,child.to)}if(d.from.x!=d.to.x){child.from=c.effects.setTransition(child,k,d.from.x,child.from);child.to=c.effects.setTransition(child,k,d.to.x,child.to)}child.css(child.from);child.animate(child.to,b.duration,b.options.easing,function(){n&&c.effects.restore(child,h)})})}a.animate(a.to,{queue:false,duration:b.duration,easing:b.options.easing,complete:function(){a.to.opacity===0&&a.css("opacity",a.from.opacity);p=="hide"&&a.hide();c.effects.restore(a,
+n?e:g);c.effects.removeWrapper(a);b.callback&&b.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
+;/*
+ * jQuery UI Effects Shake 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Shake
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(d){d.effects.shake=function(a){return this.queue(function(){var b=d(this),j=["position","top","bottom","left","right"];d.effects.setMode(b,a.options.mode||"effect");var c=a.options.direction||"left",e=a.options.distance||20,l=a.options.times||3,f=a.duration||a.options.duration||140;d.effects.save(b,j);b.show();d.effects.createWrapper(b);var g=c=="up"||c=="down"?"top":"left",h=c=="up"||c=="left"?"pos":"neg";c={};var i={},k={};c[g]=(h=="pos"?"-=":"+=")+e;i[g]=(h=="pos"?"+=":"-=")+e*2;k[g]=
+(h=="pos"?"-=":"+=")+e*2;b.animate(c,f,a.options.easing);for(e=1;e<l;e++)b.animate(i,f,a.options.easing).animate(k,f,a.options.easing);b.animate(i,f,a.options.easing).animate(c,f/2,a.options.easing,function(){d.effects.restore(b,j);d.effects.removeWrapper(b);a.callback&&a.callback.apply(this,arguments)});b.queue("fx",function(){b.dequeue()});b.dequeue()})}})(jQuery);
+;/*
+ * jQuery UI Effects Slide 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Slide
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(c){c.effects.slide=function(d){return this.queue(function(){var a=c(this),h=["position","top","bottom","left","right"],f=c.effects.setMode(a,d.options.mode||"show"),b=d.options.direction||"left";c.effects.save(a,h);a.show();c.effects.createWrapper(a).css({overflow:"hidden"});var g=b=="up"||b=="down"?"top":"left";b=b=="up"||b=="left"?"pos":"neg";var e=d.options.distance||(g=="top"?a.outerHeight({margin:true}):a.outerWidth({margin:true}));if(f=="show")a.css(g,b=="pos"?isNaN(e)?"-"+e:-e:e);
+var i={};i[g]=(f=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+e;a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){f=="hide"&&a.hide();c.effects.restore(a,h);c.effects.removeWrapper(a);d.callback&&d.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
+;/*
+ * jQuery UI Effects Transfer 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Transfer
+ *
+ * Depends:
+ *	jquery.effects.core.js
+ */
+(function(e){e.effects.transfer=function(a){return this.queue(function(){var b=e(this),c=e(a.options.to),d=c.offset();c={top:d.top,left:d.left,height:c.innerHeight(),width:c.innerWidth()};d=b.offset();var f=e('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(a.options.className).css({top:d.top,left:d.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(c,a.duration,a.options.easing,function(){f.remove();a.callback&&a.callback.apply(b[0],arguments);
+b.dequeue()})})}})(jQuery);
+;
+/*
+ * INFORMATION
+ * ---------------------------
+ * Owner:     jquery.webspirited.com
+ * Developer: Matthew Hailwood
+ * ---------------------------
+ *
+ * CHANGELOG:
+ * ---------------------------
+ * 1.1
+ * Fixed bug 01
+ * 1.2
+ * Added select option
+ * * hidden select so tags may be submitted via normal form.
+ * 1.3
+ * Fixed bug 02
+ * 1.4
+ * Fixed bug 03
+ * Fixed bug 04
+ *
+ * ---------------------------
+ * Bug Fix Credits:
+ * --
+ * * Number: 01
+ * * Bug:  Clicking autocomplete option does not add it to the array
+ * * Name: Ed <tastypopsicle.com>
+ * --
+ * * Number: 02
+ * * Bug: Unable to give select a name
+ * * Name: Ed <tastypopsicle.com>
+ * --
+ * * Number 03
+ * * Bug: reference to incorrect variable (tagArray vs tagsArray)
+ * * Name: claudio <unknown>
+ * --
+ * * Number 04
+ * * Bug: console.log() left in code
+ * * Name: claudio <unknown>
+ */
+
+
+(function($) {
+    $.widget("ui.tagit", {
+
+        // default options
+        options: {
+            tagSource:   [],
+            triggerKeys: ['enter', 'space', 'comma', 'tab'],
+            initialTags: [],
+            minLength:   1,
+            select:      false
+
+        },
+
+        _keys: {
+            backspace: 8,
+            enter:     13,
+            space:     32,
+            comma:     44,
+            tab:       9
+        },
+
+        //initialization function
+        _create: function() {
+
+            var self = this;
+            this.tagsArray = [];
+            this.timer = null;
+
+            //add class "tagit" for theming
+            this.element.addClass("tagit");
+
+            //add any initial tags added through html to the array
+            this.element.children('li').each(function() {
+                self.options.initialTags.push($(this).text());
+            });
+
+            //add the html input
+            this.element.html('<li class="tagit-new"><input class="tagit-input" type="text" /></li>');
+
+            this.input = this.element.find(".tagit-input");
+
+            //setup click handler
+            $(this.element).click(function(e) {
+                if ($(e.target).hasClass('tagit-close')) {
+                    // Removes a tag when the little 'x' is clicked.
+                    $(e.target).parent().remove();
+                    var text = $(e.target).parent().text();
+                    self._popTag(text.substr(0, text.length - 1));
+                }
+                else {
+                    self.input.focus();
+                }
+            });
+
+            //setup autcomplete handler
+            var os = this.options.select;
+            this.options.appendTo = this.element;
+            this.options.source = this.options.tagSource;
+            this.options.select = function(event, ui) {
+                clearTimeout(self.timer);
+                self._addTag(ui.item.value);
+                return false;
+            }
+            this.input.autocomplete(this.options);
+            this.options.select = os;
+
+            //setup keydown handler
+            this.input.keydown(function(e) {
+                var lastLi = self.element.children(".tagit-choice:last");
+                if (e.which == self._keys.backspace)
+                    return self._backspace(lastLi);
+
+                if (self._isInitKey(e.which)) {
+                    e.preventDefault();
+                    if ($(this).val().length >= self.options.minLength)
+                        self._addTag($(this).val());
+                }
+
+                if (lastLi.hasClass('selected'))
+                    lastLi.removeClass('selected');
+
+                self.lastKey = e.which;
+            });
+
+            //setup blur handler
+            this.input.blur(function(e) {
+                var v = $(this).val();
+                this.timer = setTimeout(function(){
+                    self._addTag(v);
+                }, 50000);
+                console.log(this.timer);
+
+                $(this).val('');
+                return false;
+            });
+
+            //define missing trim function for strings
+            String.prototype.trim = function() {
+                return this.replace(/^\s+|\s+$/g, "");
+            };
+
+            if (this.options.select) {
+                this.element.after('<select class="tagit-hiddenSelect" name="'+this.element.attr('name')+'" multiple="multiple"></select>');
+                this.select = this.element.siblings('.tagit-hiddenSelect');
+            }
+            this._initialTags();
+
+        },
+
+        _popSelect: function(text) {
+            this.select.children('option[value="' + text + '"]').remove();
+        }
+        ,
+
+        _addSelect: function(value) {
+            this.select.append('<option selected="selected" value="' + value + '">' + value + '</option>');
+        }
+        ,
+
+        _popTag: function(text) {
+            $.inArray(text, this.tagsArray);
+            if (text == undefined) {
+                text = this.tagsArray.pop();
+            }
+            else {
+                var index = ($.inArray(text, this.tagsArray) == -1 ? this.tagsArray.length - 1 : $.inArray(text, this.tagsArray));
+                this.tagsArray.splice(index, 1);
+            }
+            if (this.options.select)
+                this._popSelect(text);
+        }
+        ,
+
+        _addTag: function(value) {
+            this.input.val("");
+            value = value.replace(/,+$/, "");
+            value = value.trim();
+            if (value == "" || this._exists(value))
+                return false;
+
+            var tag = "";
+            tag = '<li class="tagit-choice">' + value + '<a class="tagit-close">x</a></li>';
+            $(tag).insertBefore(this.input.parent());
+            this.input.val("");
+            this.tagsArray.push(value);
+            if (this.options.select)
+                this._addSelect(value);
+            return true;
+        }
+        ,
+
+        _exists: function(value) {
+            if (this.tagsArray.length == 0 || $.inArray(value, this.tagsArray) == -1)
+                return false;
+            return true;
+        }
+        ,
+
+        _isInitKey : function(keyCode) {
+            var keyName = "";
+            for (var key in this._keys)
+                if (this._keys[key] == keyCode)
+                    keyName = key
+
+            if ($.inArray(keyName, this.options.triggerKeys) != -1)
+                return true;
+            return false;
+        }
+        ,
+
+        _removeTag: function() {
+            this._popTag();
+            this.element.children(".tagit-choice:last").remove();
+        }
+        ,
+
+        _backspace: function(li) {
+            if (this.input.val() == "") {
+                // When backspace is pressed, the last tag is deleted.
+                if (this.lastKey == this._keys.backspace) {
+                    this._popTag();
+                    li.remove();
+                    this.lastKey = null;
+                } else {
+                    li.addClass('selected');
+                    this.lastKey = this._keys.backspace;
+                }
+            }
+            return true;
+        }
+        ,
+
+        _initialTags: function() {
+            if (this.options.initialTags.length != 0) {
+                for (var i in this.options.initialTags)
+                    if (!this._exists(this.options.initialTags[i]))
+                        this._addTag(this.options.initialTags[i]);
+            }
+        }
+        ,
+
+        tags: function() {
+            return this.tagsArray;
+        }
+        ,
+
+        destroy: function() {
+            $.Widget.prototype.destroy.apply(this, arguments); // default destroy
+            this.tagsArray = [];
+        }
+
+    });
+})(jQuery);
+// Underscore.js 1.1.7
+// (c) 2011 Jeremy Ashkenas, DocumentCloud Inc.
+// Underscore is freely distributable under the MIT license.
+// Portions of Underscore are inspired or borrowed from Prototype,
+// Oliver Steele's Functional, and John Resig's Micro-Templating.
+// For all details and documentation:
+// http://documentcloud.github.com/underscore
+(function(){var p=this,C=p._,m={},i=Array.prototype,n=Object.prototype,f=i.slice,D=i.unshift,E=n.toString,l=n.hasOwnProperty,s=i.forEach,t=i.map,u=i.reduce,v=i.reduceRight,w=i.filter,x=i.every,y=i.some,o=i.indexOf,z=i.lastIndexOf;n=Array.isArray;var F=Object.keys,q=Function.prototype.bind,b=function(a){return new j(a)};typeof module!=="undefined"&&module.exports?(module.exports=b,b._=b):p._=b;b.VERSION="1.1.7";var h=b.each=b.forEach=function(a,c,b){if(a!=null)if(s&&a.forEach===s)a.forEach(c,b);else if(a.length===
++a.length)for(var e=0,k=a.length;e<k;e++){if(e in a&&c.call(b,a[e],e,a)===m)break}else for(e in a)if(l.call(a,e)&&c.call(b,a[e],e,a)===m)break};b.map=function(a,c,b){var e=[];if(a==null)return e;if(t&&a.map===t)return a.map(c,b);h(a,function(a,g,G){e[e.length]=c.call(b,a,g,G)});return e};b.reduce=b.foldl=b.inject=function(a,c,d,e){var k=d!==void 0;a==null&&(a=[]);if(u&&a.reduce===u)return e&&(c=b.bind(c,e)),k?a.reduce(c,d):a.reduce(c);h(a,function(a,b,f){k?d=c.call(e,d,a,b,f):(d=a,k=!0)});if(!k)throw new TypeError("Reduce of empty array with no initial value");
+return d};b.reduceRight=b.foldr=function(a,c,d,e){a==null&&(a=[]);if(v&&a.reduceRight===v)return e&&(c=b.bind(c,e)),d!==void 0?a.reduceRight(c,d):a.reduceRight(c);a=(b.isArray(a)?a.slice():b.toArray(a)).reverse();return b.reduce(a,c,d,e)};b.find=b.detect=function(a,c,b){var e;A(a,function(a,g,f){if(c.call(b,a,g,f))return e=a,!0});return e};b.filter=b.select=function(a,c,b){var e=[];if(a==null)return e;if(w&&a.filter===w)return a.filter(c,b);h(a,function(a,g,f){c.call(b,a,g,f)&&(e[e.length]=a)});return e};
+b.reject=function(a,c,b){var e=[];if(a==null)return e;h(a,function(a,g,f){c.call(b,a,g,f)||(e[e.length]=a)});return e};b.every=b.all=function(a,c,b){var e=!0;if(a==null)return e;if(x&&a.every===x)return a.every(c,b);h(a,function(a,g,f){if(!(e=e&&c.call(b,a,g,f)))return m});return e};var A=b.some=b.any=function(a,c,d){c=c||b.identity;var e=!1;if(a==null)return e;if(y&&a.some===y)return a.some(c,d);h(a,function(a,b,f){if(e|=c.call(d,a,b,f))return m});return!!e};b.include=b.contains=function(a,c){var b=
+!1;if(a==null)return b;if(o&&a.indexOf===o)return a.indexOf(c)!=-1;A(a,function(a){if(b=a===c)return!0});return b};b.invoke=function(a,c){var d=f.call(arguments,2);return b.map(a,function(a){return(c.call?c||a:a[c]).apply(a,d)})};b.pluck=function(a,c){return b.map(a,function(a){return a[c]})};b.max=function(a,c,d){if(!c&&b.isArray(a))return Math.max.apply(Math,a);var e={computed:-Infinity};h(a,function(a,b,f){b=c?c.call(d,a,b,f):a;b>=e.computed&&(e={value:a,computed:b})});return e.value};b.min=function(a,
+c,d){if(!c&&b.isArray(a))return Math.min.apply(Math,a);var e={computed:Infinity};h(a,function(a,b,f){b=c?c.call(d,a,b,f):a;b<e.computed&&(e={value:a,computed:b})});return e.value};b.sortBy=function(a,c,d){return b.pluck(b.map(a,function(a,b,f){return{value:a,criteria:c.call(d,a,b,f)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;return c<d?-1:c>d?1:0}),"value")};b.groupBy=function(a,b){var d={};h(a,function(a,f){var g=b(a,f);(d[g]||(d[g]=[])).push(a)});return d};b.sortedIndex=function(a,c,d){d||
+(d=b.identity);for(var e=0,f=a.length;e<f;){var g=e+f>>1;d(a[g])<d(c)?e=g+1:f=g}return e};b.toArray=function(a){if(!a)return[];if(a.toArray)return a.toArray();if(b.isArray(a))return f.call(a);if(b.isArguments(a))return f.call(a);return b.values(a)};b.size=function(a){return b.toArray(a).length};b.first=b.head=function(a,b,d){return b!=null&&!d?f.call(a,0,b):a[0]};b.rest=b.tail=function(a,b,d){return f.call(a,b==null||d?1:b)};b.last=function(a){return a[a.length-1]};b.compact=function(a){return b.filter(a,
+function(a){return!!a})};b.flatten=function(a){return b.reduce(a,function(a,d){if(b.isArray(d))return a.concat(b.flatten(d));a[a.length]=d;return a},[])};b.without=function(a){return b.difference(a,f.call(arguments,1))};b.uniq=b.unique=function(a,c){return b.reduce(a,function(a,e,f){if(0==f||(c===!0?b.last(a)!=e:!b.include(a,e)))a[a.length]=e;return a},[])};b.union=function(){return b.uniq(b.flatten(arguments))};b.intersection=b.intersect=function(a){var c=f.call(arguments,1);return b.filter(b.uniq(a),
+function(a){return b.every(c,function(c){return b.indexOf(c,a)>=0})})};b.difference=function(a,c){return b.filter(a,function(a){return!b.include(c,a)})};b.zip=function(){for(var a=f.call(arguments),c=b.max(b.pluck(a,"length")),d=Array(c),e=0;e<c;e++)d[e]=b.pluck(a,""+e);return d};b.indexOf=function(a,c,d){if(a==null)return-1;var e;if(d)return d=b.sortedIndex(a,c),a[d]===c?d:-1;if(o&&a.indexOf===o)return a.indexOf(c);d=0;for(e=a.length;d<e;d++)if(a[d]===c)return d;return-1};b.lastIndexOf=function(a,
+b){if(a==null)return-1;if(z&&a.lastIndexOf===z)return a.lastIndexOf(b);for(var d=a.length;d--;)if(a[d]===b)return d;return-1};b.range=function(a,b,d){arguments.length<=1&&(b=a||0,a=0);d=arguments[2]||1;for(var e=Math.max(Math.ceil((b-a)/d),0),f=0,g=Array(e);f<e;)g[f++]=a,a+=d;return g};b.bind=function(a,b){if(a.bind===q&&q)return q.apply(a,f.call(arguments,1));var d=f.call(arguments,2);return function(){return a.apply(b,d.concat(f.call(arguments)))}};b.bindAll=function(a){var c=f.call(arguments,1);
+c.length==0&&(c=b.functions(a));h(c,function(c){a[c]=b.bind(a[c],a)});return a};b.memoize=function(a,c){var d={};c||(c=b.identity);return function(){var b=c.apply(this,arguments);return l.call(d,b)?d[b]:d[b]=a.apply(this,arguments)}};b.delay=function(a,b){var d=f.call(arguments,2);return setTimeout(function(){return a.apply(a,d)},b)};b.defer=function(a){return b.delay.apply(b,[a,1].concat(f.call(arguments,1)))};var B=function(a,b,d){var e;return function(){var f=this,g=arguments,h=function(){e=null;
+a.apply(f,g)};d&&clearTimeout(e);if(d||!e)e=setTimeout(h,b)}};b.throttle=function(a,b){return B(a,b,!1)};b.debounce=function(a,b){return B(a,b,!0)};b.once=function(a){var b=!1,d;return function(){if(b)return d;b=!0;return d=a.apply(this,arguments)}};b.wrap=function(a,b){return function(){var d=[a].concat(f.call(arguments));return b.apply(this,d)}};b.compose=function(){var a=f.call(arguments);return function(){for(var b=f.call(arguments),d=a.length-1;d>=0;d--)b=[a[d].apply(this,b)];return b[0]}};b.after=
+function(a,b){return function(){if(--a<1)return b.apply(this,arguments)}};b.keys=F||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var b=[],d;for(d in a)l.call(a,d)&&(b[b.length]=d);return b};b.values=function(a){return b.map(a,b.identity)};b.functions=b.methods=function(a){var c=[],d;for(d in a)b.isFunction(a[d])&&c.push(d);return c.sort()};b.extend=function(a){h(f.call(arguments,1),function(b){for(var d in b)b[d]!==void 0&&(a[d]=b[d])});return a};b.defaults=function(a){h(f.call(arguments,
+1),function(b){for(var d in b)a[d]==null&&(a[d]=b[d])});return a};b.clone=function(a){return b.isArray(a)?a.slice():b.extend({},a)};b.tap=function(a,b){b(a);return a};b.isEqual=function(a,c){if(a===c)return!0;var d=typeof a;if(d!=typeof c)return!1;if(a==c)return!0;if(!a&&c||a&&!c)return!1;if(a._chain)a=a._wrapped;if(c._chain)c=c._wrapped;if(a.isEqual)return a.isEqual(c);if(c.isEqual)return c.isEqual(a);if(b.isDate(a)&&b.isDate(c))return a.getTime()===c.getTime();if(b.isNaN(a)&&b.isNaN(c))return!1;
+if(b.isRegExp(a)&&b.isRegExp(c))return a.source===c.source&&a.global===c.global&&a.ignoreCase===c.ignoreCase&&a.multiline===c.multiline;if(d!=="object")return!1;if(a.length&&a.length!==c.length)return!1;d=b.keys(a);var e=b.keys(c);if(d.length!=e.length)return!1;for(var f in a)if(!(f in c)||!b.isEqual(a[f],c[f]))return!1;return!0};b.isEmpty=function(a){if(b.isArray(a)||b.isString(a))return a.length===0;for(var c in a)if(l.call(a,c))return!1;return!0};b.isElement=function(a){return!!(a&&a.nodeType==
+1)};b.isArray=n||function(a){return E.call(a)==="[object Array]"};b.isObject=function(a){return a===Object(a)};b.isArguments=function(a){return!(!a||!l.call(a,"callee"))};b.isFunction=function(a){return!(!a||!a.constructor||!a.call||!a.apply)};b.isString=function(a){return!!(a===""||a&&a.charCodeAt&&a.substr)};b.isNumber=function(a){return!!(a===0||a&&a.toExponential&&a.toFixed)};b.isNaN=function(a){return a!==a};b.isBoolean=function(a){return a===!0||a===!1};b.isDate=function(a){return!(!a||!a.getTimezoneOffset||
+!a.setUTCFullYear)};b.isRegExp=function(a){return!(!a||!a.test||!a.exec||!(a.ignoreCase||a.ignoreCase===!1))};b.isNull=function(a){return a===null};b.isUndefined=function(a){return a===void 0};b.noConflict=function(){p._=C;return this};b.identity=function(a){return a};b.times=function(a,b,d){for(var e=0;e<a;e++)b.call(d,e)};b.mixin=function(a){h(b.functions(a),function(c){H(c,b[c]=a[c])})};var I=0;b.uniqueId=function(a){var b=I++;return a?a+b:b};b.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g};
+b.template=function(a,c){var d=b.templateSettings;d="var __p=[],print=function(){__p.push.apply(__p,arguments);};with(obj||{}){__p.push('"+a.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(d.interpolate,function(a,b){return"',"+b.replace(/\\'/g,"'")+",'"}).replace(d.evaluate||null,function(a,b){return"');"+b.replace(/\\'/g,"'").replace(/[\r\n\t]/g," ")+"__p.push('"}).replace(/\r/g,"\\r").replace(/\n/g,"\\n").replace(/\t/g,"\\t")+"');}return __p.join('');";d=new Function("obj",d);return c?d(c):d};
+var j=function(a){this._wrapped=a};b.prototype=j.prototype;var r=function(a,c){return c?b(a).chain():a},H=function(a,c){j.prototype[a]=function(){var a=f.call(arguments);D.call(a,this._wrapped);return r(c.apply(b,a),this._chain)}};b.mixin(b);h(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=i[a];j.prototype[a]=function(){b.apply(this._wrapped,arguments);return r(this._wrapped,this._chain)}});h(["concat","join","slice"],function(a){var b=i[a];j.prototype[a]=function(){return r(b.apply(this._wrapped,
+arguments),this._chain)}});j.prototype.chain=function(){this._chain=!0;return this};j.prototype.value=function(){return this._wrapped}})();
+// Backbone.js 0.5.3
+// (c) 2010 Jeremy Ashkenas, DocumentCloud Inc.
+// Backbone may be freely distributed under the MIT license.
+// For all details and documentation:
+// http://documentcloud.github.com/backbone
+(function(){var h=this,p=h.Backbone,e;e=typeof exports!=="undefined"?exports:h.Backbone={};e.VERSION="0.5.3";var f=h._;if(!f&&typeof require!=="undefined")f=require("underscore")._;var g=h.jQuery||h.Zepto;e.noConflict=function(){h.Backbone=p;return this};e.emulateHTTP=!1;e.emulateJSON=!1;e.Events={bind:function(a,b,c){var d=this._callbacks||(this._callbacks={});(d[a]||(d[a]=[])).push([b,c]);return this},unbind:function(a,b){var c;if(a){if(c=this._callbacks)if(b){c=c[a];if(!c)return this;for(var d=
+0,e=c.length;d<e;d++)if(c[d]&&b===c[d][0]){c[d]=null;break}}else c[a]=[]}else this._callbacks={};return this},trigger:function(a){var b,c,d,e,f=2;if(!(c=this._callbacks))return this;for(;f--;)if(b=f?a:"all",b=c[b])for(var g=0,h=b.length;g<h;g++)(d=b[g])?(e=f?Array.prototype.slice.call(arguments,1):arguments,d[0].apply(d[1]||this,e)):(b.splice(g,1),g--,h--);return this}};e.Model=function(a,b){var c;a||(a={});if(c=this.defaults)f.isFunction(c)&&(c=c.call(this)),a=f.extend({},c,a);this.attributes={};
+this._escapedAttributes={};this.cid=f.uniqueId("c");this.set(a,{silent:!0});this._changed=!1;this._previousAttributes=f.clone(this.attributes);if(b&&b.collection)this.collection=b.collection;this.initialize(a,b)};f.extend(e.Model.prototype,e.Events,{_previousAttributes:null,_changed:!1,idAttribute:"id",initialize:function(){},toJSON:function(){return f.clone(this.attributes)},get:function(a){return this.attributes[a]},escape:function(a){var b;if(b=this._escapedAttributes[a])return b;b=this.attributes[a];
+return this._escapedAttributes[a]=(b==null?"":""+b).replace(/&(?!\w+;|#\d+;|#x[\da-f]+;)/gi,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/\//g,"&#x2F;")},has:function(a){return this.attributes[a]!=null},set:function(a,b){b||(b={});if(!a)return this;if(a.attributes)a=a.attributes;var c=this.attributes,d=this._escapedAttributes;if(!b.silent&&this.validate&&!this._performValidation(a,b))return!1;if(this.idAttribute in a)this.id=a[this.idAttribute];
+var e=this._changing;this._changing=!0;for(var g in a){var h=a[g];if(!f.isEqual(c[g],h))c[g]=h,delete d[g],this._changed=!0,b.silent||this.trigger("change:"+g,this,h,b)}!e&&!b.silent&&this._changed&&this.change(b);this._changing=!1;return this},unset:function(a,b){if(!(a in this.attributes))return this;b||(b={});var c={};c[a]=void 0;if(!b.silent&&this.validate&&!this._performValidation(c,b))return!1;delete this.attributes[a];delete this._escapedAttributes[a];a==this.idAttribute&&delete this.id;this._changed=
+!0;b.silent||(this.trigger("change:"+a,this,void 0,b),this.change(b));return this},clear:function(a){a||(a={});var b,c=this.attributes,d={};for(b in c)d[b]=void 0;if(!a.silent&&this.validate&&!this._performValidation(d,a))return!1;this.attributes={};this._escapedAttributes={};this._changed=!0;if(!a.silent){for(b in c)this.trigger("change:"+b,this,void 0,a);this.change(a)}return this},fetch:function(a){a||(a={});var b=this,c=a.success;a.success=function(d,e,f){if(!b.set(b.parse(d,f),a))return!1;c&&
+c(b,d)};a.error=i(a.error,b,a);return(this.sync||e.sync).call(this,"read",this,a)},save:function(a,b){b||(b={});if(a&&!this.set(a,b))return!1;var c=this,d=b.success;b.success=function(a,e,f){if(!c.set(c.parse(a,f),b))return!1;d&&d(c,a,f)};b.error=i(b.error,c,b);var f=this.isNew()?"create":"update";return(this.sync||e.sync).call(this,f,this,b)},destroy:function(a){a||(a={});if(this.isNew())return this.trigger("destroy",this,this.collection,a);var b=this,c=a.success;a.success=function(d){b.trigger("destroy",
+b,b.collection,a);c&&c(b,d)};a.error=i(a.error,b,a);return(this.sync||e.sync).call(this,"delete",this,a)},url:function(){var a=k(this.collection)||this.urlRoot||l();if(this.isNew())return a;return a+(a.charAt(a.length-1)=="/"?"":"/")+encodeURIComponent(this.id)},parse:function(a){return a},clone:function(){return new this.constructor(this)},isNew:function(){return this.id==null},change:function(a){this.trigger("change",this,a);this._previousAttributes=f.clone(this.attributes);this._changed=!1},hasChanged:function(a){if(a)return this._previousAttributes[a]!=
+this.attributes[a];return this._changed},changedAttributes:function(a){a||(a=this.attributes);var b=this._previousAttributes,c=!1,d;for(d in a)f.isEqual(b[d],a[d])||(c=c||{},c[d]=a[d]);return c},previous:function(a){if(!a||!this._previousAttributes)return null;return this._previousAttributes[a]},previousAttributes:function(){return f.clone(this._previousAttributes)},_performValidation:function(a,b){var c=this.validate(a);if(c)return b.error?b.error(this,c,b):this.trigger("error",this,c,b),!1;return!0}});
+e.Collection=function(a,b){b||(b={});if(b.comparator)this.comparator=b.comparator;f.bindAll(this,"_onModelEvent","_removeReference");this._reset();a&&this.reset(a,{silent:!0});this.initialize.apply(this,arguments)};f.extend(e.Collection.prototype,e.Events,{model:e.Model,initialize:function(){},toJSON:function(){return this.map(function(a){return a.toJSON()})},add:function(a,b){if(f.isArray(a))for(var c=0,d=a.length;c<d;c++)this._add(a[c],b);else this._add(a,b);return this},remove:function(a,b){if(f.isArray(a))for(var c=
+0,d=a.length;c<d;c++)this._remove(a[c],b);else this._remove(a,b);return this},get:function(a){if(a==null)return null;return this._byId[a.id!=null?a.id:a]},getByCid:function(a){return a&&this._byCid[a.cid||a]},at:function(a){return this.models[a]},sort:function(a){a||(a={});if(!this.comparator)throw Error("Cannot sort a set without a comparator");this.models=this.sortBy(this.comparator);a.silent||this.trigger("reset",this,a);return this},pluck:function(a){return f.map(this.models,function(b){return b.get(a)})},
+reset:function(a,b){a||(a=[]);b||(b={});this.each(this._removeReference);this._reset();this.add(a,{silent:!0});b.silent||this.trigger("reset",this,b);return this},fetch:function(a){a||(a={});var b=this,c=a.success;a.success=function(d,f,e){b[a.add?"add":"reset"](b.parse(d,e),a);c&&c(b,d)};a.error=i(a.error,b,a);return(this.sync||e.sync).call(this,"read",this,a)},create:function(a,b){var c=this;b||(b={});a=this._prepareModel(a,b);if(!a)return!1;var d=b.success;b.success=function(a,e,f){c.add(a,b);
+d&&d(a,e,f)};a.save(null,b);return a},parse:function(a){return a},chain:function(){return f(this.models).chain()},_reset:function(){this.length=0;this.models=[];this._byId={};this._byCid={}},_prepareModel:function(a,b){if(a instanceof e.Model){if(!a.collection)a.collection=this}else{var c=a;a=new this.model(c,{collection:this});a.validate&&!a._performValidation(c,b)&&(a=!1)}return a},_add:function(a,b){b||(b={});a=this._prepareModel(a,b);if(!a)return!1;var c=this.getByCid(a);if(c)throw Error(["Can't add the same model to a set twice",
+c.id]);this._byId[a.id]=a;this._byCid[a.cid]=a;this.models.splice(b.at!=null?b.at:this.comparator?this.sortedIndex(a,this.comparator):this.length,0,a);a.bind("all",this._onModelEvent);this.length++;b.silent||a.trigger("add",a,this,b);return a},_remove:function(a,b){b||(b={});a=this.getByCid(a)||this.get(a);if(!a)return null;delete this._byId[a.id];delete this._byCid[a.cid];this.models.splice(this.indexOf(a),1);this.length--;b.silent||a.trigger("remove",a,this,b);this._removeReference(a);return a},
+_removeReference:function(a){this==a.collection&&delete a.collection;a.unbind("all",this._onModelEvent)},_onModelEvent:function(a,b,c,d){(a=="add"||a=="remove")&&c!=this||(a=="destroy"&&this._remove(b,d),b&&a==="change:"+b.idAttribute&&(delete this._byId[b.previous(b.idAttribute)],this._byId[b.id]=b),this.trigger.apply(this,arguments))}});f.each(["forEach","each","map","reduce","reduceRight","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","max",
+"min","sortBy","sortedIndex","toArray","size","first","rest","last","without","indexOf","lastIndexOf","isEmpty","groupBy"],function(a){e.Collection.prototype[a]=function(){return f[a].apply(f,[this.models].concat(f.toArray(arguments)))}});e.Router=function(a){a||(a={});if(a.routes)this.routes=a.routes;this._bindRoutes();this.initialize.apply(this,arguments)};var q=/:([\w\d]+)/g,r=/\*([\w\d]+)/g,s=/[-[\]{}()+?.,\\^$|#\s]/g;f.extend(e.Router.prototype,e.Events,{initialize:function(){},route:function(a,
+b,c){e.history||(e.history=new e.History);f.isRegExp(a)||(a=this._routeToRegExp(a));e.history.route(a,f.bind(function(d){d=this._extractParameters(a,d);c.apply(this,d);this.trigger.apply(this,["route:"+b].concat(d))},this))},navigate:function(a,b){e.history.navigate(a,b)},_bindRoutes:function(){if(this.routes){var a=[],b;for(b in this.routes)a.unshift([b,this.routes[b]]);b=0;for(var c=a.length;b<c;b++)this.route(a[b][0],a[b][1],this[a[b][1]])}},_routeToRegExp:function(a){a=a.replace(s,"\\$&").replace(q,
+"([^/]*)").replace(r,"(.*?)");return RegExp("^"+a+"$")},_extractParameters:function(a,b){return a.exec(b).slice(1)}});e.History=function(){this.handlers=[];f.bindAll(this,"checkUrl")};var j=/^#*/,t=/msie [\w.]+/,m=!1;f.extend(e.History.prototype,{interval:50,getFragment:function(a,b){if(a==null)if(this._hasPushState||b){a=window.location.pathname;var c=window.location.search;c&&(a+=c);a.indexOf(this.options.root)==0&&(a=a.substr(this.options.root.length))}else a=window.location.hash;return decodeURIComponent(a.replace(j,
+""))},start:function(a){if(m)throw Error("Backbone.history has already been started");this.options=f.extend({},{root:"/"},this.options,a);this._wantsPushState=!!this.options.pushState;this._hasPushState=!(!this.options.pushState||!window.history||!window.history.pushState);a=this.getFragment();var b=document.documentMode;if(b=t.exec(navigator.userAgent.toLowerCase())&&(!b||b<=7))this.iframe=g('<iframe src="javascript:0" tabindex="-1" />').hide().appendTo("body")[0].contentWindow,this.navigate(a);
+this._hasPushState?g(window).bind("popstate",this.checkUrl):"onhashchange"in window&&!b?g(window).bind("hashchange",this.checkUrl):setInterval(this.checkUrl,this.interval);this.fragment=a;m=!0;a=window.location;b=a.pathname==this.options.root;if(this._wantsPushState&&!this._hasPushState&&!b)return this.fragment=this.getFragment(null,!0),window.location.replace(this.options.root+"#"+this.fragment),!0;else if(this._wantsPushState&&this._hasPushState&&b&&a.hash)this.fragment=a.hash.replace(j,""),window.history.replaceState({},
+document.title,a.protocol+"//"+a.host+this.options.root+this.fragment);if(!this.options.silent)return this.loadUrl()},route:function(a,b){this.handlers.unshift({route:a,callback:b})},checkUrl:function(){var a=this.getFragment();a==this.fragment&&this.iframe&&(a=this.getFragment(this.iframe.location.hash));if(a==this.fragment||a==decodeURIComponent(this.fragment))return!1;this.iframe&&this.navigate(a);this.loadUrl()||this.loadUrl(window.location.hash)},loadUrl:function(a){var b=this.fragment=this.getFragment(a);
+return f.any(this.handlers,function(a){if(a.route.test(b))return a.callback(b),!0})},navigate:function(a,b){var c=(a||"").replace(j,"");if(!(this.fragment==c||this.fragment==decodeURIComponent(c))){if(this._hasPushState){var d=window.location;c.indexOf(this.options.root)!=0&&(c=this.options.root+c);this.fragment=c;window.history.pushState({},document.title,d.protocol+"//"+d.host+c)}else if(window.location.hash=this.fragment=c,this.iframe&&c!=this.getFragment(this.iframe.location.hash))this.iframe.document.open().close(),
+this.iframe.location.hash=c;b&&this.loadUrl(a)}}});e.View=function(a){this.cid=f.uniqueId("view");this._configure(a||{});this._ensureElement();this.delegateEvents();this.initialize.apply(this,arguments)};var u=/^(\S+)\s*(.*)$/,n=["model","collection","el","id","attributes","className","tagName"];f.extend(e.View.prototype,e.Events,{tagName:"div",$:function(a){return g(a,this.el)},initialize:function(){},render:function(){return this},remove:function(){g(this.el).remove();return this},make:function(a,
+b,c){a=document.createElement(a);b&&g(a).attr(b);c&&g(a).html(c);return a},delegateEvents:function(a){if(a||(a=this.events))for(var b in f.isFunction(a)&&(a=a.call(this)),g(this.el).unbind(".delegateEvents"+this.cid),a){var c=this[a[b]];if(!c)throw Error('Event "'+a[b]+'" does not exist');var d=b.match(u),e=d[1];d=d[2];c=f.bind(c,this);e+=".delegateEvents"+this.cid;d===""?g(this.el).bind(e,c):g(this.el).delegate(d,e,c)}},_configure:function(a){this.options&&(a=f.extend({},this.options,a));for(var b=
+0,c=n.length;b<c;b++){var d=n[b];a[d]&&(this[d]=a[d])}this.options=a},_ensureElement:function(){if(this.el){if(f.isString(this.el))this.el=g(this.el).get(0)}else{var a=this.attributes||{};if(this.id)a.id=this.id;if(this.className)a["class"]=this.className;this.el=this.make(this.tagName,a)}}});e.Model.extend=e.Collection.extend=e.Router.extend=e.View.extend=function(a,b){var c=v(this,a,b);c.extend=this.extend;return c};var w={create:"POST",update:"PUT","delete":"DELETE",read:"GET"};e.sync=function(a,
+b,c){var d=w[a];c=f.extend({type:d,dataType:"json"},c);if(!c.url)c.url=k(b)||l();if(!c.data&&b&&(a=="create"||a=="update"))c.contentType="application/json",c.data=JSON.stringify(b.toJSON());if(e.emulateJSON)c.contentType="application/x-www-form-urlencoded",c.data=c.data?{model:c.data}:{};if(e.emulateHTTP&&(d==="PUT"||d==="DELETE")){if(e.emulateJSON)c.data._method=d;c.type="POST";c.beforeSend=function(a){a.setRequestHeader("X-HTTP-Method-Override",d)}}if(c.type!=="GET"&&!e.emulateJSON)c.processData=
+!1;return g.ajax(c)};var o=function(){},v=function(a,b,c){var d;d=b&&b.hasOwnProperty("constructor")?b.constructor:function(){return a.apply(this,arguments)};f.extend(d,a);o.prototype=a.prototype;d.prototype=new o;b&&f.extend(d.prototype,b);c&&f.extend(d,c);d.prototype.constructor=d;d.__super__=a.prototype;return d},k=function(a){if(!a||!a.url)return null;return f.isFunction(a.url)?a.url():a.url},l=function(){throw Error('A "url" property or function must be specified');},i=function(a,b,c){return function(d){a?
+a(b,d,c):b.trigger("error",b,d,c)}}}).call(this);
+/* ==========================================================
+ * bootstrap-twipsy.js v1.3.0
+ * http://twitter.github.com/bootstrap/javascript.html#twipsy
+ * Adapted from the original jQuery.tipsy by Jason Frame
+ * ==========================================================
+ * Copyright 2011 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( $ ) {
+
+ /* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
+  * ======================================================= */
+
+  var transitionEnd
+
+  $(document).ready(function () {
+
+    $.support.transition = (function () {
+      var thisBody = document.body || document.documentElement
+        , thisStyle = thisBody.style
+        , support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
+      return support
+    })()
+
+    // set CSS transition event type
+    if ( $.support.transition ) {
+      transitionEnd = "TransitionEnd"
+      if ( $.browser.webkit ) {
+      	transitionEnd = "webkitTransitionEnd"
+      } else if ( $.browser.mozilla ) {
+      	transitionEnd = "transitionend"
+      } else if ( $.browser.opera ) {
+      	transitionEnd = "oTransitionEnd"
+      }
+    }
+
+  })
+
+
+ /* TWIPSY PUBLIC CLASS DEFINITION
+  * ============================== */
+
+  var Twipsy = function ( element, options ) {
+    this.$element = $(element)
+    this.options = options
+    this.enabled = true
+    this.fixTitle()
+  }
+
+  Twipsy.prototype = {
+
+    show: function() {
+      var pos
+        , actualWidth
+        , actualHeight
+        , placement
+        , $tip
+        , tp
+
+      if (this.getTitle() && this.enabled) {
+        $tip = this.tip()
+        this.setContent()
+
+        if (this.options.animate) {
+          $tip.addClass('fade')
+        }
+
+        $tip
+          .remove()
+          .css({ top: 0, left: 0, display: 'block' })
+          .prependTo(document.body)
+
+        pos = $.extend({}, this.$element.offset(), {
+          width: this.$element[0].offsetWidth
+        , height: this.$element[0].offsetHeight
+        })
+
+        actualWidth = $tip[0].offsetWidth
+        actualHeight = $tip[0].offsetHeight
+
+        placement = maybeCall(this.options.placement, this, [ $tip[0], this.$element[0] ])
+
+        switch (placement) {
+          case 'below':
+            tp = {top: pos.top + pos.height + this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2}
+            break
+          case 'above':
+            tp = {top: pos.top - actualHeight - this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2}
+            break
+          case 'left':
+            tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth - this.options.offset}
+            break
+          case 'right':
+            tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width + this.options.offset}
+            break
+        }
+
+        $tip
+          .css(tp)
+          .addClass(placement)
+          .addClass('in')
+      }
+    }
+
+  , setContent: function () {
+      var $tip = this.tip()
+      $tip.find('.twipsy-inner')[this.options.html ? 'html' : 'text'](this.getTitle())
+      $tip[0].className = 'twipsy'
+    }
+
+  , hide: function() {
+      var that = this
+        , $tip = this.tip()
+
+      $tip.removeClass('in')
+
+      function removeElement () {
+        $tip.remove()
+      }
+
+      $.support.transition && this.$tip.hasClass('fade') ?
+        $tip.bind(transitionEnd, removeElement) :
+        removeElement()
+    }
+
+  , 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') || '').removeAttr('title')
+      }
+    }
+
+  , getTitle: function() {
+      var title
+        , $e = this.$element
+        , o = this.options
+
+        this.fixTitle()
+
+        if (typeof o.title == 'string') {
+          title = $e.attr(o.title == 'title' ? 'data-original-title' : o.title)
+        } else if (typeof o.title == 'function') {
+          title = o.title.call($e[0])
+        }
+
+        title = ('' + title).replace(/(^\s*|\s*$)/, "")
+
+        return title || o.fallback
+    }
+
+  , tip: function() {
+      if (!this.$tip) {
+        this.$tip = $('<div class="twipsy" />').html('<div class="twipsy-arrow"></div><div class="twipsy-inner"></div>')
+      }
+      return this.$tip
+    }
+
+  , 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
+    }
+
+  }
+
+
+ /* TWIPSY PRIVATE METHODS
+  * ====================== */
+
+   function maybeCall ( thing, ctx, args ) {
+     return typeof thing == 'function' ? thing.apply(ctx, args) : thing
+   }
+
+ /* TWIPSY PLUGIN DEFINITION
+  * ======================== */
+
+  $.fn.twipsy = function (options) {
+    $.fn.twipsy.initWith.call(this, options, Twipsy, 'twipsy')
+    return this
+  }
+
+  $.fn.twipsy.initWith = function (options, Constructor, name) {
+    var twipsy
+      , binder
+      , eventIn
+      , eventOut
+
+    if (options === true) {
+      return this.data(name)
+    } else if (typeof options == 'string') {
+      twipsy = this.data(name)
+      if (twipsy) {
+        twipsy[options]()
+      }
+      return this
+    }
+
+    options = $.extend({}, $.fn[name].defaults, options)
+
+    function get(ele) {
+      var twipsy = $.data(ele, name)
+
+      if (!twipsy) {
+        twipsy = new Constructor(ele, $.fn.twipsy.elementOptions(ele, options))
+        $.data(ele, name, twipsy)
+      }
+
+      return twipsy
+    }
+
+    function enter() {
+      var twipsy = get(this)
+      twipsy.hoverState = 'in'
+
+      if (options.delayIn == 0) {
+        twipsy.show()
+      } else {
+        twipsy.fixTitle()
+        setTimeout(function() {
+          if (twipsy.hoverState == 'in') {
+            twipsy.show()
+          }
+        }, options.delayIn)
+      }
+    }
+
+    function leave() {
+      var twipsy = get(this)
+      twipsy.hoverState = 'out'
+      if (options.delayOut == 0) {
+        twipsy.hide()
+      } else {
+        setTimeout(function() {
+          if (twipsy.hoverState == 'out') {
+            twipsy.hide()
+          }
+        }, options.delayOut)
+      }
+    }
+
+    if (!options.live) {
+      this.each(function() {
+        get(this)
+      })
+    }
+
+    if (options.trigger != 'manual') {
+      binder   = options.live ? 'live' : 'bind'
+      eventIn  = options.trigger == 'hover' ? 'mouseenter' : 'focus'
+      eventOut = options.trigger == 'hover' ? 'mouseleave' : 'blur'
+      this[binder](eventIn, enter)[binder](eventOut, leave)
+    }
+
+    return this
+  }
+
+  $.fn.twipsy.Twipsy = Twipsy
+
+  $.fn.twipsy.defaults = {
+    animate: true
+  , delayIn: 0
+  , delayOut: 0
+  , fallback: ''
+  , placement: 'above'
+  , html: false
+  , live: false
+  , offset: 0
+  , title: 'title'
+  , trigger: 'hover'
+  }
+
+  $.fn.twipsy.elementOptions = function(ele, options) {
+    return $.metadata ? $.extend({}, options, $(ele).metadata()) : options
+  }
+
+}( window.jQuery || window.ender );
+/* ===========================================================
+ * bootstrap-popover.js v1.3.0
+ * http://twitter.github.com/bootstrap/javascript.html#popover
+ * ===========================================================
+ * Copyright 2011 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( $ ) {
+
+  var Popover = function ( element, options ) {
+    this.$element = $(element)
+    this.options = options
+    this.enabled = true
+    this.fixTitle()
+  }
+
+  /* NOTE: POPOVER EXTENDS BOOTSTRAP-TWIPSY.js
+     ========================================= */
+
+  Popover.prototype = $.extend({}, $.fn.twipsy.Twipsy.prototype, {
+
+    setContent: function () {
+      var $tip = this.tip()
+      $tip.find('.title')[this.options.html ? 'html' : 'text'](this.getTitle())
+      $tip.find('.content p')[this.options.html ? 'html' : 'text'](this.getContent())
+      $tip[0].className = 'popover'
+    }
+
+  , getContent: function () {
+      var content
+       , $e = this.$element
+       , o = this.options
+
+      if (typeof this.options.content == 'string') {
+        content = $e.attr(o.content)
+      } else if (typeof this.options.content == 'function') {
+        content = this.options.content.call(this.$element[0])
+      }
+      return content
+    }
+
+  , tip: function() {
+      if (!this.$tip) {
+        this.$tip = $('<div class="popover" />')
+          .html('<div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div>')
+      }
+      return this.$tip
+    }
+
+  })
+
+
+ /* POPOVER PLUGIN DEFINITION
+  * ======================= */
+
+  $.fn.popover = function (options) {
+    if (typeof options == 'object') options = $.extend({}, $.fn.popover.defaults, options)
+    $.fn.twipsy.initWith.call(this, options, Popover, 'popover')
+    return this
+  }
+
+  $.fn.popover.defaults = $.extend({} , $.fn.twipsy.defaults, { content: 'data-content', placement: 'right'})
+
+}( window.jQuery || window.ender );
+/**
+ * Version: 1.0 Alpha-1 
+ * Build Date: 13-Nov-2007
+ * Copyright (c) 2006-2007, Coolite Inc. (http://www.coolite.com/). All rights reserved.
+ * License: Licensed under The MIT License. See license.txt and http://www.datejs.com/license/. 
+ * Website: http://www.datejs.com/ or http://www.coolite.com/datejs/
+ */
+
+Date.CultureInfo={name:"en-US",englishName:"English (United States)",nativeName:"English (United States)",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],abbreviatedDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],shortestDayNames:["Su","Mo","Tu","We","Th","Fr","Sa"],firstLetterDayNames:["S","M","T","W","T","F","S"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],abbreviatedMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],amDesignator:"AM",pmDesignator:"PM",firstDayOfWeek:0,twoDigitYearMax:2029,dateElementOrder:"mdy",formatPatterns:{shortDate:"M/d/yyyy",longDate:"dddd, MMMM dd, yyyy",shortTime:"h:mm tt",longTime:"h:mm:ss tt",fullDateTime:"dddd, MMMM dd, yyyy h:mm:ss tt",sortableDateTime:"yyyy-MM-ddTHH:mm:ss",universalSortableDateTime:"yyyy-MM-dd HH:mm:ssZ",rfc1123:"ddd, dd MMM yyyy HH:mm:ss GMT",monthDay:"MMMM dd",yearMonth:"MMMM, yyyy"},regexPatterns:{jan:/^jan(uary)?/i,feb:/^feb(ruary)?/i,mar:/^mar(ch)?/i,apr:/^apr(il)?/i,may:/^may/i,jun:/^jun(e)?/i,jul:/^jul(y)?/i,aug:/^aug(ust)?/i,sep:/^sep(t(ember)?)?/i,oct:/^oct(ober)?/i,nov:/^nov(ember)?/i,dec:/^dec(ember)?/i,sun:/^su(n(day)?)?/i,mon:/^mo(n(day)?)?/i,tue:/^tu(e(s(day)?)?)?/i,wed:/^we(d(nesday)?)?/i,thu:/^th(u(r(s(day)?)?)?)?/i,fri:/^fr(i(day)?)?/i,sat:/^sa(t(urday)?)?/i,future:/^next/i,past:/^last|past|prev(ious)?/i,add:/^(\+|after|from)/i,subtract:/^(\-|before|ago)/i,yesterday:/^yesterday/i,today:/^t(oday)?/i,tomorrow:/^tomorrow/i,now:/^n(ow)?/i,millisecond:/^ms|milli(second)?s?/i,second:/^sec(ond)?s?/i,minute:/^min(ute)?s?/i,hour:/^h(ou)?rs?/i,week:/^w(ee)?k/i,month:/^m(o(nth)?s?)?/i,day:/^d(ays?)?/i,year:/^y((ea)?rs?)?/i,shortMeridian:/^(a|p)/i,longMeridian:/^(a\.?m?\.?|p\.?m?\.?)/i,timezone:/^((e(s|d)t|c(s|d)t|m(s|d)t|p(s|d)t)|((gmt)?\s*(\+|\-)\s*\d\d\d\d?)|gmt)/i,ordinalSuffix:/^\s*(st|nd|rd|th)/i,timeContext:/^\s*(\:|a|p)/i},abbreviatedTimeZoneStandard:{GMT:"-000",EST:"-0400",CST:"-0500",MST:"-0600",PST:"-0700"},abbreviatedTimeZoneDST:{GMT:"-000",EDT:"-0500",CDT:"-0600",MDT:"-0700",PDT:"-0800"}};
+Date.getMonthNumberFromName=function(name){var n=Date.CultureInfo.monthNames,m=Date.CultureInfo.abbreviatedMonthNames,s=name.toLowerCase();for(var i=0;i<n.length;i++){if(n[i].toLowerCase()==s||m[i].toLowerCase()==s){return i;}}
+return-1;};Date.getDayNumberFromName=function(name){var n=Date.CultureInfo.dayNames,m=Date.CultureInfo.abbreviatedDayNames,o=Date.CultureInfo.shortestDayNames,s=name.toLowerCase();for(var i=0;i<n.length;i++){if(n[i].toLowerCase()==s||m[i].toLowerCase()==s){return i;}}
+return-1;};Date.isLeapYear=function(year){return(((year%4===0)&&(year%100!==0))||(year%400===0));};Date.getDaysInMonth=function(year,month){return[31,(Date.isLeapYear(year)?29:28),31,30,31,30,31,31,30,31,30,31][month];};Date.getTimezoneOffset=function(s,dst){return(dst||false)?Date.CultureInfo.abbreviatedTimeZoneDST[s.toUpperCase()]:Date.CultureInfo.abbreviatedTimeZoneStandard[s.toUpperCase()];};Date.getTimezoneAbbreviation=function(offset,dst){var n=(dst||false)?Date.CultureInfo.abbreviatedTimeZoneDST:Date.CultureInfo.abbreviatedTimeZoneStandard,p;for(p in n){if(n[p]===offset){return p;}}
+return null;};Date.prototype.clone=function(){return new Date(this.getTime());};Date.prototype.compareTo=function(date){if(isNaN(this)){throw new Error(this);}
+if(date instanceof Date&&!isNaN(date)){return(this>date)?1:(this<date)?-1:0;}else{throw new TypeError(date);}};Date.prototype.equals=function(date){return(this.compareTo(date)===0);};Date.prototype.between=function(start,end){var t=this.getTime();return t>=start.getTime()&&t<=end.getTime();};Date.prototype.addMilliseconds=function(value){this.setMilliseconds(this.getMilliseconds()+value);return this;};Date.prototype.addSeconds=function(value){return this.addMilliseconds(value*1000);};Date.prototype.addMinutes=function(value){return this.addMilliseconds(value*60000);};Date.prototype.addHours=function(value){return this.addMilliseconds(value*3600000);};Date.prototype.addDays=function(value){return this.addMilliseconds(value*86400000);};Date.prototype.addWeeks=function(value){return this.addMilliseconds(value*604800000);};Date.prototype.addMonths=function(value){var n=this.getDate();this.setDate(1);this.setMonth(this.getMonth()+value);this.setDate(Math.min(n,this.getDaysInMonth()));return this;};Date.prototype.addYears=function(value){return this.addMonths(value*12);};Date.prototype.add=function(config){if(typeof config=="number"){this._orient=config;return this;}
+var x=config;if(x.millisecond||x.milliseconds){this.addMilliseconds(x.millisecond||x.milliseconds);}
+if(x.second||x.seconds){this.addSeconds(x.second||x.seconds);}
+if(x.minute||x.minutes){this.addMinutes(x.minute||x.minutes);}
+if(x.hour||x.hours){this.addHours(x.hour||x.hours);}
+if(x.month||x.months){this.addMonths(x.month||x.months);}
+if(x.year||x.years){this.addYears(x.year||x.years);}
+if(x.day||x.days){this.addDays(x.day||x.days);}
+return this;};Date._validate=function(value,min,max,name){if(typeof value!="number"){throw new TypeError(value+" is not a Number.");}else if(value<min||value>max){throw new RangeError(value+" is not a valid value for "+name+".");}
+return true;};Date.validateMillisecond=function(n){return Date._validate(n,0,999,"milliseconds");};Date.validateSecond=function(n){return Date._validate(n,0,59,"seconds");};Date.validateMinute=function(n){return Date._validate(n,0,59,"minutes");};Date.validateHour=function(n){return Date._validate(n,0,23,"hours");};Date.validateDay=function(n,year,month){return Date._validate(n,1,Date.getDaysInMonth(year,month),"days");};Date.validateMonth=function(n){return Date._validate(n,0,11,"months");};Date.validateYear=function(n){return Date._validate(n,1,9999,"seconds");};Date.prototype.set=function(config){var x=config;if(!x.millisecond&&x.millisecond!==0){x.millisecond=-1;}
+if(!x.second&&x.second!==0){x.second=-1;}
+if(!x.minute&&x.minute!==0){x.minute=-1;}
+if(!x.hour&&x.hour!==0){x.hour=-1;}
+if(!x.day&&x.day!==0){x.day=-1;}
+if(!x.month&&x.month!==0){x.month=-1;}
+if(!x.year&&x.year!==0){x.year=-1;}
+if(x.millisecond!=-1&&Date.validateMillisecond(x.millisecond)){this.addMilliseconds(x.millisecond-this.getMilliseconds());}
+if(x.second!=-1&&Date.validateSecond(x.second)){this.addSeconds(x.second-this.getSeconds());}
+if(x.minute!=-1&&Date.validateMinute(x.minute)){this.addMinutes(x.minute-this.getMinutes());}
+if(x.hour!=-1&&Date.validateHour(x.hour)){this.addHours(x.hour-this.getHours());}
+if(x.month!==-1&&Date.validateMonth(x.month)){this.addMonths(x.month-this.getMonth());}
+if(x.year!=-1&&Date.validateYear(x.year)){this.addYears(x.year-this.getFullYear());}
+if(x.day!=-1&&Date.validateDay(x.day,this.getFullYear(),this.getMonth())){this.addDays(x.day-this.getDate());}
+if(x.timezone){this.setTimezone(x.timezone);}
+if(x.timezoneOffset){this.setTimezoneOffset(x.timezoneOffset);}
+return this;};Date.prototype.clearTime=function(){this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);return this;};Date.prototype.isLeapYear=function(){var y=this.getFullYear();return(((y%4===0)&&(y%100!==0))||(y%400===0));};Date.prototype.isWeekday=function(){return!(this.is().sat()||this.is().sun());};Date.prototype.getDaysInMonth=function(){return Date.getDaysInMonth(this.getFullYear(),this.getMonth());};Date.prototype.moveToFirstDayOfMonth=function(){return this.set({day:1});};Date.prototype.moveToLastDayOfMonth=function(){return this.set({day:this.getDaysInMonth()});};Date.prototype.moveToDayOfWeek=function(day,orient){var diff=(day-this.getDay()+7*(orient||+1))%7;return this.addDays((diff===0)?diff+=7*(orient||+1):diff);};Date.prototype.moveToMonth=function(month,orient){var diff=(month-this.getMonth()+12*(orient||+1))%12;return this.addMonths((diff===0)?diff+=12*(orient||+1):diff);};Date.prototype.getDayOfYear=function(){return Math.floor((this-new Date(this.getFullYear(),0,1))/86400000);};Date.prototype.getWeekOfYear=function(firstDayOfWeek){var y=this.getFullYear(),m=this.getMonth(),d=this.getDate();var dow=firstDayOfWeek||Date.CultureInfo.firstDayOfWeek;var offset=7+1-new Date(y,0,1).getDay();if(offset==8){offset=1;}
+var daynum=((Date.UTC(y,m,d,0,0,0)-Date.UTC(y,0,1,0,0,0))/86400000)+1;var w=Math.floor((daynum-offset+7)/7);if(w===dow){y--;var prevOffset=7+1-new Date(y,0,1).getDay();if(prevOffset==2||prevOffset==8){w=53;}else{w=52;}}
+return w;};Date.prototype.isDST=function(){console.log('isDST');return this.toString().match(/(E|C|M|P)(S|D)T/)[2]=="D";};Date.prototype.getTimezone=function(){return Date.getTimezoneAbbreviation(this.getUTCOffset,this.isDST());};Date.prototype.setTimezoneOffset=function(s){var here=this.getTimezoneOffset(),there=Number(s)*-6/10;this.addMinutes(there-here);return this;};Date.prototype.setTimezone=function(s){return this.setTimezoneOffset(Date.getTimezoneOffset(s));};Date.prototype.getUTCOffset=function(){var n=this.getTimezoneOffset()*-10/6,r;if(n<0){r=(n-10000).toString();return r[0]+r.substr(2);}else{r=(n+10000).toString();return"+"+r.substr(1);}};Date.prototype.getDayName=function(abbrev){return abbrev?Date.CultureInfo.abbreviatedDayNames[this.getDay()]:Date.CultureInfo.dayNames[this.getDay()];};Date.prototype.getMonthName=function(abbrev){return abbrev?Date.CultureInfo.abbreviatedMonthNames[this.getMonth()]:Date.CultureInfo.monthNames[this.getMonth()];};Date.prototype._toString=Date.prototype.toString;Date.prototype.toString=function(format){var self=this;var p=function p(s){return(s.toString().length==1)?"0"+s:s;};return format?format.replace(/dd?d?d?|MM?M?M?|yy?y?y?|hh?|HH?|mm?|ss?|tt?|zz?z?/g,function(format){switch(format){case"hh":return p(self.getHours()<13?self.getHours():(self.getHours()-12));case"h":return self.getHours()<13?self.getHours():(self.getHours()-12);case"HH":return p(self.getHours());case"H":return self.getHours();case"mm":return p(self.getMinutes());case"m":return self.getMinutes();case"ss":return p(self.getSeconds());case"s":return self.getSeconds();case"yyyy":return self.getFullYear();case"yy":return self.getFullYear().toString().substring(2,4);case"dddd":return self.getDayName();case"ddd":return self.getDayName(true);case"dd":return p(self.getDate());case"d":return self.getDate().toString();case"MMMM":return self.getMonthName();case"MMM":return self.getMonthName(true);case"MM":return p((self.getMonth()+1));case"M":return self.getMonth()+1;case"t":return self.getHours()<12?Date.CultureInfo.amDesignator.substring(0,1):Date.CultureInfo.pmDesignator.substring(0,1);case"tt":return self.getHours()<12?Date.CultureInfo.amDesignator:Date.CultureInfo.pmDesignator;case"zzz":case"zz":case"z":return"";}}):this._toString();};
+Date.now=function(){return new Date();};Date.today=function(){return Date.now().clearTime();};Date.prototype._orient=+1;Date.prototype.next=function(){this._orient=+1;return this;};Date.prototype.last=Date.prototype.prev=Date.prototype.previous=function(){this._orient=-1;return this;};Date.prototype._is=false;Date.prototype.is=function(){this._is=true;return this;};Number.prototype._dateElement="day";Number.prototype.fromNow=function(){var c={};c[this._dateElement]=this;return Date.now().add(c);};Number.prototype.ago=function(){var c={};c[this._dateElement]=this*-1;return Date.now().add(c);};(function(){var $D=Date.prototype,$N=Number.prototype;var dx=("sunday monday tuesday wednesday thursday friday saturday").split(/\s/),mx=("january february march april may june july august september october november december").split(/\s/),px=("Millisecond Second Minute Hour Day Week Month Year").split(/\s/),de;var df=function(n){return function(){if(this._is){this._is=false;return this.getDay()==n;}
+return this.moveToDayOfWeek(n,this._orient);};};for(var i=0;i<dx.length;i++){$D[dx[i]]=$D[dx[i].substring(0,3)]=df(i);}
+var mf=function(n){return function(){if(this._is){this._is=false;return this.getMonth()===n;}
+return this.moveToMonth(n,this._orient);};};for(var j=0;j<mx.length;j++){$D[mx[j]]=$D[mx[j].substring(0,3)]=mf(j);}
+var ef=function(j){return function(){if(j.substring(j.length-1)!="s"){j+="s";}
+return this["add"+j](this._orient);};};var nf=function(n){return function(){this._dateElement=n;return this;};};for(var k=0;k<px.length;k++){de=px[k].toLowerCase();$D[de]=$D[de+"s"]=ef(px[k]);$N[de]=$N[de+"s"]=nf(de);}}());Date.prototype.toJSONString=function(){return this.toString("yyyy-MM-ddThh:mm:ssZ");};Date.prototype.toShortDateString=function(){return this.toString(Date.CultureInfo.formatPatterns.shortDatePattern);};Date.prototype.toLongDateString=function(){return this.toString(Date.CultureInfo.formatPatterns.longDatePattern);};Date.prototype.toShortTimeString=function(){return this.toString(Date.CultureInfo.formatPatterns.shortTimePattern);};Date.prototype.toLongTimeString=function(){return this.toString(Date.CultureInfo.formatPatterns.longTimePattern);};Date.prototype.getOrdinal=function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th";}};
+(function(){Date.Parsing={Exception:function(s){this.message="Parse error at '"+s.substring(0,10)+" ...'";}};var $P=Date.Parsing;var _=$P.Operators={rtoken:function(r){return function(s){var mx=s.match(r);if(mx){return([mx[0],s.substring(mx[0].length)]);}else{throw new $P.Exception(s);}};},token:function(s){return function(s){return _.rtoken(new RegExp("^\s*"+s+"\s*"))(s);};},stoken:function(s){return _.rtoken(new RegExp("^"+s));},until:function(p){return function(s){var qx=[],rx=null;while(s.length){try{rx=p.call(this,s);}catch(e){qx.push(rx[0]);s=rx[1];continue;}
+break;}
+return[qx,s];};},many:function(p){return function(s){var rx=[],r=null;while(s.length){try{r=p.call(this,s);}catch(e){return[rx,s];}
+rx.push(r[0]);s=r[1];}
+return[rx,s];};},optional:function(p){return function(s){var r=null;try{r=p.call(this,s);}catch(e){return[null,s];}
+return[r[0],r[1]];};},not:function(p){return function(s){try{p.call(this,s);}catch(e){return[null,s];}
+throw new $P.Exception(s);};},ignore:function(p){return p?function(s){var r=null;r=p.call(this,s);return[null,r[1]];}:null;},product:function(){var px=arguments[0],qx=Array.prototype.slice.call(arguments,1),rx=[];for(var i=0;i<px.length;i++){rx.push(_.each(px[i],qx));}
+return rx;},cache:function(rule){var cache={},r=null;return function(s){try{r=cache[s]=(cache[s]||rule.call(this,s));}catch(e){r=cache[s]=e;}
+if(r instanceof $P.Exception){throw r;}else{return r;}};},any:function(){var px=arguments;return function(s){var r=null;for(var i=0;i<px.length;i++){if(px[i]==null){continue;}
+try{r=(px[i].call(this,s));}catch(e){r=null;}
+if(r){return r;}}
+throw new $P.Exception(s);};},each:function(){var px=arguments;return function(s){var rx=[],r=null;for(var i=0;i<px.length;i++){if(px[i]==null){continue;}
+try{r=(px[i].call(this,s));}catch(e){throw new $P.Exception(s);}
+rx.push(r[0]);s=r[1];}
+return[rx,s];};},all:function(){var px=arguments,_=_;return _.each(_.optional(px));},sequence:function(px,d,c){d=d||_.rtoken(/^\s*/);c=c||null;if(px.length==1){return px[0];}
+return function(s){var r=null,q=null;var rx=[];for(var i=0;i<px.length;i++){try{r=px[i].call(this,s);}catch(e){break;}
+rx.push(r[0]);try{q=d.call(this,r[1]);}catch(ex){q=null;break;}
+s=q[1];}
+if(!r){throw new $P.Exception(s);}
+if(q){throw new $P.Exception(q[1]);}
+if(c){try{r=c.call(this,r[1]);}catch(ey){throw new $P.Exception(r[1]);}}
+return[rx,(r?r[1]:s)];};},between:function(d1,p,d2){d2=d2||d1;var _fn=_.each(_.ignore(d1),p,_.ignore(d2));return function(s){var rx=_fn.call(this,s);return[[rx[0][0],r[0][2]],rx[1]];};},list:function(p,d,c){d=d||_.rtoken(/^\s*/);c=c||null;return(p instanceof Array?_.each(_.product(p.slice(0,-1),_.ignore(d)),p.slice(-1),_.ignore(c)):_.each(_.many(_.each(p,_.ignore(d))),px,_.ignore(c)));},set:function(px,d,c){d=d||_.rtoken(/^\s*/);c=c||null;return function(s){var r=null,p=null,q=null,rx=null,best=[[],s],last=false;for(var i=0;i<px.length;i++){q=null;p=null;r=null;last=(px.length==1);try{r=px[i].call(this,s);}catch(e){continue;}
+rx=[[r[0]],r[1]];if(r[1].length>0&&!last){try{q=d.call(this,r[1]);}catch(ex){last=true;}}else{last=true;}
+if(!last&&q[1].length===0){last=true;}
+if(!last){var qx=[];for(var j=0;j<px.length;j++){if(i!=j){qx.push(px[j]);}}
+p=_.set(qx,d).call(this,q[1]);if(p[0].length>0){rx[0]=rx[0].concat(p[0]);rx[1]=p[1];}}
+if(rx[1].length<best[1].length){best=rx;}
+if(best[1].length===0){break;}}
+if(best[0].length===0){return best;}
+if(c){try{q=c.call(this,best[1]);}catch(ey){throw new $P.Exception(best[1]);}
+best[1]=q[1];}
+return best;};},forward:function(gr,fname){return function(s){return gr[fname].call(this,s);};},replace:function(rule,repl){return function(s){var r=rule.call(this,s);return[repl,r[1]];};},process:function(rule,fn){return function(s){var r=rule.call(this,s);return[fn.call(this,r[0]),r[1]];};},min:function(min,rule){return function(s){var rx=rule.call(this,s);if(rx[0].length<min){throw new $P.Exception(s);}
+return rx;};}};var _generator=function(op){return function(){var args=null,rx=[];if(arguments.length>1){args=Array.prototype.slice.call(arguments);}else if(arguments[0]instanceof Array){args=arguments[0];}
+if(args){for(var i=0,px=args.shift();i<px.length;i++){args.unshift(px[i]);rx.push(op.apply(null,args));args.shift();return rx;}}else{return op.apply(null,arguments);}};};var gx="optional not ignore cache".split(/\s/);for(var i=0;i<gx.length;i++){_[gx[i]]=_generator(_[gx[i]]);}
+var _vector=function(op){return function(){if(arguments[0]instanceof Array){return op.apply(null,arguments[0]);}else{return op.apply(null,arguments);}};};var vx="each any all".split(/\s/);for(var j=0;j<vx.length;j++){_[vx[j]]=_vector(_[vx[j]]);}}());(function(){var flattenAndCompact=function(ax){var rx=[];for(var i=0;i<ax.length;i++){if(ax[i]instanceof Array){rx=rx.concat(flattenAndCompact(ax[i]));}else{if(ax[i]){rx.push(ax[i]);}}}
+return rx;};Date.Grammar={};Date.Translator={hour:function(s){return function(){this.hour=Number(s);};},minute:function(s){return function(){this.minute=Number(s);};},second:function(s){return function(){this.second=Number(s);};},meridian:function(s){return function(){this.meridian=s.slice(0,1).toLowerCase();};},timezone:function(s){return function(){var n=s.replace(/[^\d\+\-]/g,"");if(n.length){this.timezoneOffset=Number(n);}else{this.timezone=s.toLowerCase();}};},day:function(x){var s=x[0];return function(){this.day=Number(s.match(/\d+/)[0]);};},month:function(s){return function(){this.month=((s.length==3)?Date.getMonthNumberFromName(s):(Number(s)-1));};},year:function(s){return function(){var n=Number(s);this.year=((s.length>2)?n:(n+(((n+2000)<Date.CultureInfo.twoDigitYearMax)?2000:1900)));};},rday:function(s){return function(){switch(s){case"yesterday":this.days=-1;break;case"tomorrow":this.days=1;break;case"today":this.days=0;break;case"now":this.days=0;this.now=true;break;}};},finishExact:function(x){x=(x instanceof Array)?x:[x];var now=new Date();this.year=now.getFullYear();this.month=now.getMonth();this.day=1;this.hour=0;this.minute=0;this.second=0;for(var i=0;i<x.length;i++){if(x[i]){x[i].call(this);}}
+this.hour=(this.meridian=="p"&&this.hour<13)?this.hour+12:this.hour;if(this.day>Date.getDaysInMonth(this.year,this.month)){throw new RangeError(this.day+" is not a valid value for days.");}
+var r=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second);if(this.timezone){r.set({timezone:this.timezone});}else if(this.timezoneOffset){r.set({timezoneOffset:this.timezoneOffset});}
+return r;},finish:function(x){x=(x instanceof Array)?flattenAndCompact(x):[x];if(x.length===0){return null;}
+for(var i=0;i<x.length;i++){if(typeof x[i]=="function"){x[i].call(this);}}
+if(this.now){return new Date();}
+var today=Date.today();var method=null;var expression=!!(this.days!=null||this.orient||this.operator);if(expression){var gap,mod,orient;orient=((this.orient=="past"||this.operator=="subtract")?-1:1);if(this.weekday){this.unit="day";gap=(Date.getDayNumberFromName(this.weekday)-today.getDay());mod=7;this.days=gap?((gap+(orient*mod))%mod):(orient*mod);}
+if(this.month){this.unit="month";gap=(this.month-today.getMonth());mod=12;this.months=gap?((gap+(orient*mod))%mod):(orient*mod);this.month=null;}
+if(!this.unit){this.unit="day";}
+if(this[this.unit+"s"]==null||this.operator!=null){if(!this.value){this.value=1;}
+if(this.unit=="week"){this.unit="day";this.value=this.value*7;}
+this[this.unit+"s"]=this.value*orient;}
+return today.add(this);}else{if(this.meridian&&this.hour){this.hour=(this.hour<13&&this.meridian=="p")?this.hour+12:this.hour;}
+if(this.weekday&&!this.day){this.day=(today.addDays((Date.getDayNumberFromName(this.weekday)-today.getDay()))).getDate();}
+if(this.month&&!this.day){this.day=1;}
+return today.set(this);}}};var _=Date.Parsing.Operators,g=Date.Grammar,t=Date.Translator,_fn;g.datePartDelimiter=_.rtoken(/^([\s\-\.\,\/\x27]+)/);g.timePartDelimiter=_.stoken(":");g.whiteSpace=_.rtoken(/^\s*/);g.generalDelimiter=_.rtoken(/^(([\s\,]|at|on)+)/);var _C={};g.ctoken=function(keys){var fn=_C[keys];if(!fn){var c=Date.CultureInfo.regexPatterns;var kx=keys.split(/\s+/),px=[];for(var i=0;i<kx.length;i++){px.push(_.replace(_.rtoken(c[kx[i]]),kx[i]));}
+fn=_C[keys]=_.any.apply(null,px);}
+return fn;};g.ctoken2=function(key){return _.rtoken(Date.CultureInfo.regexPatterns[key]);};g.h=_.cache(_.process(_.rtoken(/^(0[0-9]|1[0-2]|[1-9])/),t.hour));g.hh=_.cache(_.process(_.rtoken(/^(0[0-9]|1[0-2])/),t.hour));g.H=_.cache(_.process(_.rtoken(/^([0-1][0-9]|2[0-3]|[0-9])/),t.hour));g.HH=_.cache(_.process(_.rtoken(/^([0-1][0-9]|2[0-3])/),t.hour));g.m=_.cache(_.process(_.rtoken(/^([0-5][0-9]|[0-9])/),t.minute));g.mm=_.cache(_.process(_.rtoken(/^[0-5][0-9]/),t.minute));g.s=_.cache(_.process(_.rtoken(/^([0-5][0-9]|[0-9])/),t.second));g.ss=_.cache(_.process(_.rtoken(/^[0-5][0-9]/),t.second));g.hms=_.cache(_.sequence([g.H,g.mm,g.ss],g.timePartDelimiter));g.t=_.cache(_.process(g.ctoken2("shortMeridian"),t.meridian));g.tt=_.cache(_.process(g.ctoken2("longMeridian"),t.meridian));g.z=_.cache(_.process(_.rtoken(/^(\+|\-)?\s*\d\d\d\d?/),t.timezone));g.zz=_.cache(_.process(_.rtoken(/^(\+|\-)\s*\d\d\d\d/),t.timezone));g.zzz=_.cache(_.process(g.ctoken2("timezone"),t.timezone));g.timeSuffix=_.each(_.ignore(g.whiteSpace),_.set([g.tt,g.zzz]));g.time=_.each(_.optional(_.ignore(_.stoken("T"))),g.hms,g.timeSuffix);g.d=_.cache(_.process(_.each(_.rtoken(/^([0-2]\d|3[0-1]|\d)/),_.optional(g.ctoken2("ordinalSuffix"))),t.day));g.dd=_.cache(_.process(_.each(_.rtoken(/^([0-2]\d|3[0-1])/),_.optional(g.ctoken2("ordinalSuffix"))),t.day));g.ddd=g.dddd=_.cache(_.process(g.ctoken("sun mon tue wed thu fri sat"),function(s){return function(){this.weekday=s;};}));g.M=_.cache(_.process(_.rtoken(/^(1[0-2]|0\d|\d)/),t.month));g.MM=_.cache(_.process(_.rtoken(/^(1[0-2]|0\d)/),t.month));g.MMM=g.MMMM=_.cache(_.process(g.ctoken("jan feb mar apr may jun jul aug sep oct nov dec"),t.month));g.y=_.cache(_.process(_.rtoken(/^(\d\d?)/),t.year));g.yy=_.cache(_.process(_.rtoken(/^(\d\d)/),t.year));g.yyy=_.cache(_.process(_.rtoken(/^(\d\d?\d?\d?)/),t.year));g.yyyy=_.cache(_.process(_.rtoken(/^(\d\d\d\d)/),t.year));_fn=function(){return _.each(_.any.apply(null,arguments),_.not(g.ctoken2("timeContext")));};g.day=_fn(g.d,g.dd);g.month=_fn(g.M,g.MMM);g.year=_fn(g.yyyy,g.yy);g.orientation=_.process(g.ctoken("past future"),function(s){return function(){this.orient=s;};});g.operator=_.process(g.ctoken("add subtract"),function(s){return function(){this.operator=s;};});g.rday=_.process(g.ctoken("yesterday tomorrow today now"),t.rday);g.unit=_.process(g.ctoken("minute hour day week month year"),function(s){return function(){this.unit=s;};});g.value=_.process(_.rtoken(/^\d\d?(st|nd|rd|th)?/),function(s){return function(){this.value=s.replace(/\D/g,"");};});g.expression=_.set([g.rday,g.operator,g.value,g.unit,g.orientation,g.ddd,g.MMM]);_fn=function(){return _.set(arguments,g.datePartDelimiter);};g.mdy=_fn(g.ddd,g.month,g.day,g.year);g.ymd=_fn(g.ddd,g.year,g.month,g.day);g.dmy=_fn(g.ddd,g.day,g.month,g.year);g.date=function(s){return((g[Date.CultureInfo.dateElementOrder]||g.mdy).call(this,s));};g.format=_.process(_.many(_.any(_.process(_.rtoken(/^(dd?d?d?|MM?M?M?|yy?y?y?|hh?|HH?|mm?|ss?|tt?|zz?z?)/),function(fmt){if(g[fmt]){return g[fmt];}else{throw Date.Parsing.Exception(fmt);}}),_.process(_.rtoken(/^[^dMyhHmstz]+/),function(s){return _.ignore(_.stoken(s));}))),function(rules){return _.process(_.each.apply(null,rules),t.finishExact);});var _F={};var _get=function(f){return _F[f]=(_F[f]||g.format(f)[0]);};g.formats=function(fx){if(fx instanceof Array){var rx=[];for(var i=0;i<fx.length;i++){rx.push(_get(fx[i]));}
+return _.any.apply(null,rx);}else{return _get(fx);}};g._formats=g.formats(["yyyy-MM-ddTHH:mm:ss","ddd, MMM dd, yyyy H:mm:ss tt","ddd MMM d yyyy HH:mm:ss zzz","d"]);g._start=_.process(_.set([g.date,g.time,g.expression],g.generalDelimiter,g.whiteSpace),t.finish);g.start=function(s){try{var r=g._formats.call({},s);if(r[1].length===0){return r;}}catch(e){}
+return g._start.call({},s);};}());Date._parse=Date.parse;Date.parse=function(s){var r=null;if(!s){return null;}
+try{r=Date.Grammar.start.call({},s);}catch(e){return null;}
+return((r[1].length===0)?r[0]:null);};Date.getParseFunction=function(fx){var fn=Date.Grammar.formats(fx);return function(s){var r=null;try{r=fn.call({},s);}catch(e){return null;}
+return((r[1].length===0)?r[0]:null);};};Date.parseExact=function(s,fx){return Date.getParseFunction(fx)(s);};
+(function(){if (!Date.now) Date.now = function() {
+  return +new Date;
+};
+try {
+  document.createElement("div").style.setProperty("opacity", 0, "");
+} catch (error) {
+  var d3_style_prototype = CSSStyleDeclaration.prototype,
+      d3_style_setProperty = d3_style_prototype.setProperty;
+  d3_style_prototype.setProperty = function(name, value, priority) {
+    d3_style_setProperty.call(this, name, value + "", priority);
+  };
+}
+d3 = {version: "2.4.6"}; // semver
+var d3_array = d3_arraySlice; // conversion for NodeLists
+
+function d3_arrayCopy(pseudoarray) {
+  var i = -1, n = pseudoarray.length, array = [];
+  while (++i < n) array.push(pseudoarray[i]);
+  return array;
+}
+
+function d3_arraySlice(pseudoarray) {
+  return Array.prototype.slice.call(pseudoarray);
+}
+
+try {
+  d3_array(document.documentElement.childNodes)[0].nodeType;
+} catch(e) {
+  d3_array = d3_arrayCopy;
+}
+
+var d3_arraySubclass = [].__proto__?
+
+// Until ECMAScript supports array subclassing, prototype injection works well.
+function(array, prototype) {
+  array.__proto__ = prototype;
+}:
+
+// And if your browser doesn't support __proto__, we'll use direct extension.
+function(array, prototype) {
+  for (var property in prototype) array[property] = prototype[property];
+};
+function d3_this() {
+  return this;
+}
+d3.functor = function(v) {
+  return typeof v === "function" ? v : function() { return v; };
+};
+// A getter-setter method that preserves the appropriate `this` context.
+d3.rebind = function(object, method) {
+  return function() {
+    var x = method.apply(object, arguments);
+    return arguments.length ? object : x;
+  };
+};
+d3.ascending = function(a, b) {
+  return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
+};
+d3.descending = function(a, b) {
+  return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;
+};
+d3.mean = function(array, f) {
+  var n = array.length,
+      a,
+      m = 0,
+      i = -1,
+      j = 0;
+  if (arguments.length === 1) {
+    while (++i < n) if (d3_number(a = array[i])) m += (a - m) / ++j;
+  } else {
+    while (++i < n) if (d3_number(a = f.call(array, array[i], i))) m += (a - m) / ++j;
+  }
+  return j ? m : undefined;
+};
+d3.median = function(array, f) {
+  if (arguments.length > 1) array = array.map(f);
+  array = array.filter(d3_number);
+  return array.length ? d3.quantile(array.sort(d3.ascending), .5) : undefined;
+};
+d3.min = function(array, f) {
+  var i = -1,
+      n = array.length,
+      a,
+      b;
+  if (arguments.length === 1) {
+    while (++i < n && ((a = array[i]) == null || a != a)) a = undefined;
+    while (++i < n) if ((b = array[i]) != null && a > b) a = b;
+  } else {
+    while (++i < n && ((a = f.call(array, array[i], i)) == null || a != a)) a = undefined;
+    while (++i < n) if ((b = f.call(array, array[i], i)) != null && a > b) a = b;
+  }
+  return a;
+};
+d3.max = function(array, f) {
+  var i = -1,
+      n = array.length,
+      a,
+      b;
+  if (arguments.length === 1) {
+    while (++i < n && ((a = array[i]) == null || a != a)) a = undefined;
+    while (++i < n) if ((b = array[i]) != null && b > a) a = b;
+  } else {
+    while (++i < n && ((a = f.call(array, array[i], i)) == null || a != a)) a = undefined;
+    while (++i < n) if ((b = f.call(array, array[i], i)) != null && b > a) a = b;
+  }
+  return a;
+};
+function d3_number(x) {
+  return x != null && !isNaN(x);
+}
+d3.sum = function(array, f) {
+  var s = 0,
+      n = array.length,
+      a,
+      i = -1;
+
+  if (arguments.length === 1) {
+    while (++i < n) if (!isNaN(a = +array[i])) s += a;
+  } else {
+    while (++i < n) if (!isNaN(a = +f.call(array, array[i], i))) s += a;
+  }
+
+  return s;
+};
+// R-7 per <http://en.wikipedia.org/wiki/Quantile>
+d3.quantile = function(values, p) {
+  var H = (values.length - 1) * p + 1,
+      h = Math.floor(H),
+      v = values[h - 1],
+      e = H - h;
+  return e ? v + e * (values[h] - v) : v;
+};
+d3.zip = function() {
+  if (!(n = arguments.length)) return [];
+  for (var i = -1, m = d3.min(arguments, d3_zipLength), zips = new Array(m); ++i < m;) {
+    for (var j = -1, n, zip = zips[i] = new Array(n); ++j < n;) {
+      zip[j] = arguments[j][i];
+    }
+  }
+  return zips;
+};
+
+function d3_zipLength(d) {
+  return d.length;
+}
+// Locate the insertion point for x in a to maintain sorted order. The
+// arguments lo and hi may be used to specify a subset of the array which should
+// be considered; by default the entire array is used. If x is already present
+// in a, the insertion point will be before (to the left of) any existing
+// entries. The return value is suitable for use as the first argument to
+// `array.splice` assuming that a is already sorted.
+//
+// The returned insertion point i partitions the array a into two halves so that
+// all v < x for v in a[lo:i] for the left side and all v >= x for v in a[i:hi]
+// for the right side.
+d3.bisectLeft = function(a, x, lo, hi) {
+  if (arguments.length < 3) lo = 0;
+  if (arguments.length < 4) hi = a.length;
+  while (lo < hi) {
+    var mid = (lo + hi) >> 1;
+    if (a[mid] < x) lo = mid + 1;
+    else hi = mid;
+  }
+  return lo;
+};
+
+// Similar to bisectLeft, but returns an insertion point which comes after (to
+// the right of) any existing entries of x in a.
+//
+// The returned insertion point i partitions the array into two halves so that
+// all v <= x for v in a[lo:i] for the left side and all v > x for v in a[i:hi]
+// for the right side.
+d3.bisect =
+d3.bisectRight = function(a, x, lo, hi) {
+  if (arguments.length < 3) lo = 0;
+  if (arguments.length < 4) hi = a.length;
+  while (lo < hi) {
+    var mid = (lo + hi) >> 1;
+    if (x < a[mid]) hi = mid;
+    else lo = mid + 1;
+  }
+  return lo;
+};
+d3.first = function(array, f) {
+  var i = 0,
+      n = array.length,
+      a = array[0],
+      b;
+  if (arguments.length === 1) f = d3.ascending;
+  while (++i < n) {
+    if (f.call(array, a, b = array[i]) > 0) {
+      a = b;
+    }
+  }
+  return a;
+};
+d3.last = function(array, f) {
+  var i = 0,
+      n = array.length,
+      a = array[0],
+      b;
+  if (arguments.length === 1) f = d3.ascending;
+  while (++i < n) {
+    if (f.call(array, a, b = array[i]) <= 0) {
+      a = b;
+    }
+  }
+  return a;
+};
+d3.nest = function() {
+  var nest = {},
+      keys = [],
+      sortKeys = [],
+      sortValues,
+      rollup;
+
+  function map(array, depth) {
+    if (depth >= keys.length) return rollup
+        ? rollup.call(nest, array) : (sortValues
+        ? array.sort(sortValues)
+        : array);
+
+    var i = -1,
+        n = array.length,
+        key = keys[depth++],
+        keyValue,
+        object,
+        o = {};
+
+    while (++i < n) {
+      if ((keyValue = key(object = array[i])) in o) {
+        o[keyValue].push(object);
+      } else {
+        o[keyValue] = [object];
+      }
+    }
+
+    for (keyValue in o) {
+      o[keyValue] = map(o[keyValue], depth);
+    }
+
+    return o;
+  }
+
+  function entries(map, depth) {
+    if (depth >= keys.length) return map;
+
+    var a = [],
+        sortKey = sortKeys[depth++],
+        key;
+
+    for (key in map) {
+      a.push({key: key, values: entries(map[key], depth)});
+    }
+
+    if (sortKey) a.sort(function(a, b) {
+      return sortKey(a.key, b.key);
+    });
+
+    return a;
+  }
+
+  nest.map = function(array) {
+    return map(array, 0);
+  };
+
+  nest.entries = function(array) {
+    return entries(map(array, 0), 0);
+  };
+
+  nest.key = function(d) {
+    keys.push(d);
+    return nest;
+  };
+
+  // Specifies the order for the most-recently specified key.
+  // Note: only applies to entries. Map keys are unordered!
+  nest.sortKeys = function(order) {
+    sortKeys[keys.length - 1] = order;
+    return nest;
+  };
+
+  // Specifies the order for leaf values.
+  // Applies to both maps and entries array.
+  nest.sortValues = function(order) {
+    sortValues = order;
+    return nest;
+  };
+
+  nest.rollup = function(f) {
+    rollup = f;
+    return nest;
+  };
+
+  return nest;
+};
+d3.keys = function(map) {
+  var keys = [];
+  for (var key in map) keys.push(key);
+  return keys;
+};
+d3.values = function(map) {
+  var values = [];
+  for (var key in map) values.push(map[key]);
+  return values;
+};
+d3.entries = function(map) {
+  var entries = [];
+  for (var key in map) entries.push({key: key, value: map[key]});
+  return entries;
+};
+d3.permute = function(array, indexes) {
+  var permutes = [],
+      i = -1,
+      n = indexes.length;
+  while (++i < n) permutes[i] = array[indexes[i]];
+  return permutes;
+};
+d3.merge = function(arrays) {
+  return Array.prototype.concat.apply([], arrays);
+};
+d3.split = function(array, f) {
+  var arrays = [],
+      values = [],
+      value,
+      i = -1,
+      n = array.length;
+  if (arguments.length < 2) f = d3_splitter;
+  while (++i < n) {
+    if (f.call(values, value = array[i], i)) {
+      values = [];
+    } else {
+      if (!values.length) arrays.push(values);
+      values.push(value);
+    }
+  }
+  return arrays;
+};
+
+function d3_splitter(d) {
+  return d == null;
+}
+function d3_collapse(s) {
+  return s.replace(/(^\s+)|(\s+$)/g, "").replace(/\s+/g, " ");
+}
+/**
+ * @param {number} start
+ * @param {number=} stop
+ * @param {number=} step
+ */
+d3.range = function(start, stop, step) {
+  if (arguments.length < 3) {
+    step = 1;
+    if (arguments.length < 2) {
+      stop = start;
+      start = 0;
+    }
+  }
+  if ((stop - start) / step == Infinity) throw new Error("infinite range");
+  var range = [],
+       i = -1,
+       j;
+  if (step < 0) while ((j = start + step * ++i) > stop) range.push(j);
+  else while ((j = start + step * ++i) < stop) range.push(j);
+  return range;
+};
+d3.requote = function(s) {
+  return s.replace(d3_requote_re, "\\$&");
+};
+
+var d3_requote_re = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;
+d3.round = function(x, n) {
+  return n
+      ? Math.round(x * Math.pow(10, n)) * Math.pow(10, -n)
+      : Math.round(x);
+};
+d3.xhr = function(url, mime, callback) {
+  var req = new XMLHttpRequest;
+  if (arguments.length < 3) callback = mime;
+  else if (mime && req.overrideMimeType) req.overrideMimeType(mime);
+  req.open("GET", url, true);
+  req.onreadystatechange = function() {
+    if (req.readyState === 4) callback(req.status < 300 ? req : null);
+  };
+  req.send(null);
+};
+d3.text = function(url, mime, callback) {
+  function ready(req) {
+    callback(req && req.responseText);
+  }
+  if (arguments.length < 3) {
+    callback = mime;
+    mime = null;
+  }
+  d3.xhr(url, mime, ready);
+};
+d3.json = function(url, callback) {
+  d3.text(url, "application/json", function(text) {
+    callback(text ? JSON.parse(text) : null);
+  });
+};
+d3.html = function(url, callback) {
+  d3.text(url, "text/html", function(text) {
+    if (text != null) { // Treat empty string as valid HTML.
+      var range = document.createRange();
+      range.selectNode(document.body);
+      text = range.createContextualFragment(text);
+    }
+    callback(text);
+  });
+};
+d3.xml = function(url, mime, callback) {
+  function ready(req) {
+    callback(req && req.responseXML);
+  }
+  if (arguments.length < 3) {
+    callback = mime;
+    mime = null;
+  }
+  d3.xhr(url, mime, ready);
+};
+d3.ns = {
+
+  prefix: {
+    svg: "http://www.w3.org/2000/svg",
+    xhtml: "http://www.w3.org/1999/xhtml",
+    xlink: "http://www.w3.org/1999/xlink",
+    xml: "http://www.w3.org/XML/1998/namespace",
+    xmlns: "http://www.w3.org/2000/xmlns/"
+  },
+
+  qualify: function(name) {
+    var i = name.indexOf(":");
+    return i < 0 ? name : {
+      space: d3.ns.prefix[name.substring(0, i)],
+      local: name.substring(i + 1)
+    };
+  }
+
+};
+/** @param {...string} types */
+d3.dispatch = function(types) {
+  var dispatch = {},
+      type;
+  for (var i = 0, n = arguments.length; i < n; i++) {
+    type = arguments[i];
+    dispatch[type] = d3_dispatch(type);
+  }
+  return dispatch;
+};
+
+function d3_dispatch(type) {
+  var dispatch = {},
+      listeners = [];
+
+  dispatch.add = function(listener) {
+    for (var i = 0; i < listeners.length; i++) {
+      if (listeners[i].listener == listener) return dispatch; // already registered
+    }
+    listeners.push({listener: listener, on: true});
+    return dispatch;
+  };
+
+  dispatch.remove = function(listener) {
+    for (var i = 0; i < listeners.length; i++) {
+      var l = listeners[i];
+      if (l.listener == listener) {
+        l.on = false;
+        listeners = listeners.slice(0, i).concat(listeners.slice(i + 1));
+        break;
+      }
+    }
+    return dispatch;
+  };
+
+  dispatch.dispatch = function() {
+    var ls = listeners; // defensive reference
+    for (var i = 0, n = ls.length; i < n; i++) {
+      var l = ls[i];
+      if (l.on) l.listener.apply(this, arguments);
+    }
+  };
+
+  return dispatch;
+};
+// TODO align
+d3.format = function(specifier) {
+  var match = d3_format_re.exec(specifier),
+      fill = match[1] || " ",
+      sign = match[3] || "",
+      zfill = match[5],
+      width = +match[6],
+      comma = match[7],
+      precision = match[8],
+      type = match[9],
+      scale = 1,
+      suffix = "",
+      integer = false;
+
+  if (precision) precision = +precision.substring(1);
+
+  if (zfill) {
+    fill = "0"; // TODO align = "=";
+    if (comma) width -= Math.floor((width - 1) / 4);
+  }
+
+  switch (type) {
+    case "n": comma = true; type = "g"; break;
+    case "%": scale = 100; suffix = "%"; type = "f"; break;
+    case "p": scale = 100; suffix = "%"; type = "r"; break;
+    case "d": integer = true; precision = 0; break;
+    case "s": scale = -1; type = "r"; break;
+  }
+
+  // If no precision is specified for r, fallback to general notation.
+  if (type == "r" && !precision) type = "g";
+
+  type = d3_format_types[type] || d3_format_typeDefault;
+
+  return function(value) {
+
+    // Return the empty string for floats formatted as ints.
+    if (integer && (value % 1)) return "";
+
+    // Convert negative to positive, and record the sign prefix.
+    var negative = (value < 0) && (value = -value) ? "\u2212" : sign;
+
+    // Apply the scale, computing it from the value's exponent for si format.
+    if (scale < 0) {
+      var prefix = d3.formatPrefix(value, precision);
+      value *= prefix.scale;
+      suffix = prefix.symbol;
+    } else {
+      value *= scale;
+    }
+
+    // Convert to the desired precision.
+    value = type(value, precision);
+
+    // If the fill character is 0, the sign and group is applied after the fill.
+    if (zfill) {
+      var length = value.length + negative.length;
+      if (length < width) value = new Array(width - length + 1).join(fill) + value;
+      if (comma) value = d3_format_group(value);
+      value = negative + value;
+    }
+
+    // Otherwise (e.g., space-filling), the sign and group is applied before.
+    else {
+      if (comma) value = d3_format_group(value);
+      value = negative + value;
+      var length = value.length;
+      if (length < width) value = new Array(width - length + 1).join(fill) + value;
+    }
+
+    return value + suffix;
+  };
+};
+
+// [[fill]align][sign][#][0][width][,][.precision][type]
+var d3_format_re = /(?:([^{])?([<>=^]))?([+\- ])?(#)?(0)?([0-9]+)?(,)?(\.[0-9]+)?([a-zA-Z%])?/;
+
+var d3_format_types = {
+  g: function(x, p) { return x.toPrecision(p); },
+  e: function(x, p) { return x.toExponential(p); },
+  f: function(x, p) { return x.toFixed(p); },
+  r: function(x, p) { return d3.round(x, p = d3_format_precision(x, p)).toFixed(Math.max(0, Math.min(20, p))); }
+};
+
+function d3_format_precision(x, p) {
+  return p - (x ? 1 + Math.floor(Math.log(x + Math.pow(10, 1 + Math.floor(Math.log(x) / Math.LN10) - p)) / Math.LN10) : 1);
+}
+
+function d3_format_typeDefault(x) {
+  return x + "";
+}
+
+// Apply comma grouping for thousands.
+function d3_format_group(value) {
+  var i = value.lastIndexOf("."),
+      f = i >= 0 ? value.substring(i) : (i = value.length, ""),
+      t = [];
+  while (i > 0) t.push(value.substring(i -= 3, i + 3));
+  return t.reverse().join(",") + f;
+}
+var d3_formatPrefixes = ["y","z","a","f","p","n","μ","m","","k","M","G","T","P","E","Z","Y"].map(d3_formatPrefix);
+
+d3.formatPrefix = function(value, precision) {
+  var i = 0;
+  if (value) {
+    if (value < 0) value *= -1;
+    if (precision) value = d3.round(value, d3_format_precision(value, precision));
+    i = 1 + Math.floor(1e-12 + Math.log(value) / Math.LN10);
+    i = Math.max(-24, Math.min(24, Math.floor((i <= 0 ? i + 1 : i - 1) / 3) * 3));
+  }
+  return d3_formatPrefixes[8 + i / 3];
+};
+
+function d3_formatPrefix(d, i) {
+  return {
+    scale: Math.pow(10, (8 - i) * 3),
+    symbol: d
+  };
+}
+
+/*
+ * TERMS OF USE - EASING EQUATIONS
+ *
+ * Open source under the BSD License.
+ *
+ * Copyright 2001 Robert Penner
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * - Redistributions of source code must retain the above copyright notice, this
+ *   list of conditions and the following disclaimer.
+ *
+ * - Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
+ *   and/or other materials provided with the distribution.
+ *
+ * - Neither the name of the author nor the names of contributors may be used to
+ *   endorse or promote products derived from this software without specific
+ *   prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+var d3_ease_quad = d3_ease_poly(2),
+    d3_ease_cubic = d3_ease_poly(3);
+
+var d3_ease = {
+  linear: function() { return d3_ease_linear; },
+  poly: d3_ease_poly,
+  quad: function() { return d3_ease_quad; },
+  cubic: function() { return d3_ease_cubic; },
+  sin: function() { return d3_ease_sin; },
+  exp: function() { return d3_ease_exp; },
+  circle: function() { return d3_ease_circle; },
+  elastic: d3_ease_elastic,
+  back: d3_ease_back,
+  bounce: function() { return d3_ease_bounce; }
+};
+
+var d3_ease_mode = {
+  "in": function(f) { return f; },
+  "out": d3_ease_reverse,
+  "in-out": d3_ease_reflect,
+  "out-in": function(f) { return d3_ease_reflect(d3_ease_reverse(f)); }
+};
+
+d3.ease = function(name) {
+  var i = name.indexOf("-"),
+      t = i >= 0 ? name.substring(0, i) : name,
+      m = i >= 0 ? name.substring(i + 1) : "in";
+  return d3_ease_clamp(d3_ease_mode[m](d3_ease[t].apply(null, Array.prototype.slice.call(arguments, 1))));
+};
+
+function d3_ease_clamp(f) {
+  return function(t) {
+    return t <= 0 ? 0 : t >= 1 ? 1 : f(t);
+  };
+}
+
+function d3_ease_reverse(f) {
+  return function(t) {
+    return 1 - f(1 - t);
+  };
+}
+
+function d3_ease_reflect(f) {
+  return function(t) {
+    return .5 * (t < .5 ? f(2 * t) : (2 - f(2 - 2 * t)));
+  };
+}
+
+function d3_ease_linear(t) {
+  return t;
+}
+
+function d3_ease_poly(e) {
+  return function(t) {
+    return Math.pow(t, e);
+  }
+}
+
+function d3_ease_sin(t) {
+  return 1 - Math.cos(t * Math.PI / 2);
+}
+
+function d3_ease_exp(t) {
+  return Math.pow(2, 10 * (t - 1));
+}
+
+function d3_ease_circle(t) {
+  return 1 - Math.sqrt(1 - t * t);
+}
+
+function d3_ease_elastic(a, p) {
+  var s;
+  if (arguments.length < 2) p = 0.45;
+  if (arguments.length < 1) { a = 1; s = p / 4; }
+  else s = p / (2 * Math.PI) * Math.asin(1 / a);
+  return function(t) {
+    return 1 + a * Math.pow(2, 10 * -t) * Math.sin((t - s) * 2 * Math.PI / p);
+  };
+}
+
+function d3_ease_back(s) {
+  if (!s) s = 1.70158;
+  return function(t) {
+    return t * t * ((s + 1) * t - s);
+  };
+}
+
+function d3_ease_bounce(t) {
+  return t < 1 / 2.75 ? 7.5625 * t * t
+      : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75
+      : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375
+      : 7.5625 * (t -= 2.625 / 2.75) * t + .984375;
+}
+d3.event = null;
+d3.interpolate = function(a, b) {
+  var i = d3.interpolators.length, f;
+  while (--i >= 0 && !(f = d3.interpolators[i](a, b)));
+  return f;
+};
+
+d3.interpolateNumber = function(a, b) {
+  b -= a;
+  return function(t) { return a + b * t; };
+};
+
+d3.interpolateRound = function(a, b) {
+  b -= a;
+  return function(t) { return Math.round(a + b * t); };
+};
+
+d3.interpolateString = function(a, b) {
+  var m, // current match
+      i, // current index
+      j, // current index (for coallescing)
+      s0 = 0, // start index of current string prefix
+      s1 = 0, // end index of current string prefix
+      s = [], // string constants and placeholders
+      q = [], // number interpolators
+      n, // q.length
+      o;
+
+  // Reset our regular expression!
+  d3_interpolate_number.lastIndex = 0;
+
+  // Find all numbers in b.
+  for (i = 0; m = d3_interpolate_number.exec(b); ++i) {
+    if (m.index) s.push(b.substring(s0, s1 = m.index));
+    q.push({i: s.length, x: m[0]});
+    s.push(null);
+    s0 = d3_interpolate_number.lastIndex;
+  }
+  if (s0 < b.length) s.push(b.substring(s0));
+
+  // Find all numbers in a.
+  for (i = 0, n = q.length; (m = d3_interpolate_number.exec(a)) && i < n; ++i) {
+    o = q[i];
+    if (o.x == m[0]) { // The numbers match, so coallesce.
+      if (o.i) {
+        if (s[o.i + 1] == null) { // This match is followed by another number.
+          s[o.i - 1] += o.x;
+          s.splice(o.i, 1);
+          for (j = i + 1; j < n; ++j) q[j].i--;
+        } else { // This match is followed by a string, so coallesce twice.
+          s[o.i - 1] += o.x + s[o.i + 1];
+          s.splice(o.i, 2);
+          for (j = i + 1; j < n; ++j) q[j].i -= 2;
+        }
+      } else {
+          if (s[o.i + 1] == null) { // This match is followed by another number.
+          s[o.i] = o.x;
+        } else { // This match is followed by a string, so coallesce twice.
+          s[o.i] = o.x + s[o.i + 1];
+          s.splice(o.i + 1, 1);
+          for (j = i + 1; j < n; ++j) q[j].i--;
+        }
+      }
+      q.splice(i, 1);
+      n--;
+      i--;
+    } else {
+      o.x = d3.interpolateNumber(parseFloat(m[0]), parseFloat(o.x));
+    }
+  }
+
+  // Remove any numbers in b not found in a.
+  while (i < n) {
+    o = q.pop();
+    if (s[o.i + 1] == null) { // This match is followed by another number.
+      s[o.i] = o.x;
+    } else { // This match is followed by a string, so coallesce twice.
+      s[o.i] = o.x + s[o.i + 1];
+      s.splice(o.i + 1, 1);
+    }
+    n--;
+  }
+
+  // Special optimization for only a single match.
+  if (s.length === 1) {
+    return s[0] == null ? q[0].x : function() { return b; };
+  }
+
+  // Otherwise, interpolate each of the numbers and rejoin the string.
+  return function(t) {
+    for (i = 0; i < n; ++i) s[(o = q[i]).i] = o.x(t);
+    return s.join("");
+  };
+};
+
+d3.interpolateRgb = function(a, b) {
+  a = d3.rgb(a);
+  b = d3.rgb(b);
+  var ar = a.r,
+      ag = a.g,
+      ab = a.b,
+      br = b.r - ar,
+      bg = b.g - ag,
+      bb = b.b - ab;
+  return function(t) {
+    return "#"
+        + d3_rgb_hex(Math.round(ar + br * t))
+        + d3_rgb_hex(Math.round(ag + bg * t))
+        + d3_rgb_hex(Math.round(ab + bb * t));
+  };
+};
+
+// interpolates HSL space, but outputs RGB string (for compatibility)
+d3.interpolateHsl = function(a, b) {
+  a = d3.hsl(a);
+  b = d3.hsl(b);
+  var h0 = a.h,
+      s0 = a.s,
+      l0 = a.l,
+      h1 = b.h - h0,
+      s1 = b.s - s0,
+      l1 = b.l - l0;
+  return function(t) {
+    return d3_hsl_rgb(h0 + h1 * t, s0 + s1 * t, l0 + l1 * t).toString();
+  };
+};
+
+d3.interpolateArray = function(a, b) {
+  var x = [],
+      c = [],
+      na = a.length,
+      nb = b.length,
+      n0 = Math.min(a.length, b.length),
+      i;
+  for (i = 0; i < n0; ++i) x.push(d3.interpolate(a[i], b[i]));
+  for (; i < na; ++i) c[i] = a[i];
+  for (; i < nb; ++i) c[i] = b[i];
+  return function(t) {
+    for (i = 0; i < n0; ++i) c[i] = x[i](t);
+    return c;
+  };
+};
+
+d3.interpolateObject = function(a, b) {
+  var i = {},
+      c = {},
+      k;
+  for (k in a) {
+    if (k in b) {
+      i[k] = d3_interpolateByName(k)(a[k], b[k]);
+    } else {
+      c[k] = a[k];
+    }
+  }
+  for (k in b) {
+    if (!(k in a)) {
+      c[k] = b[k];
+    }
+  }
+  return function(t) {
+    for (k in i) c[k] = i[k](t);
+    return c;
+  };
+}
+
+var d3_interpolate_number = /[-+]?(?:\d+\.\d+|\d+\.|\.\d+|\d+)(?:[eE][-]?\d+)?/g,
+    d3_interpolate_rgb = {background: 1, fill: 1, stroke: 1};
+
+function d3_interpolateByName(n) {
+  return n in d3_interpolate_rgb || /\bcolor\b/.test(n)
+      ? d3.interpolateRgb
+      : d3.interpolate;
+}
+
+d3.interpolators = [
+  d3.interpolateObject,
+  function(a, b) { return (b instanceof Array) && d3.interpolateArray(a, b); },
+  function(a, b) { return (typeof b === "string") && d3.interpolateString(String(a), b); },
+  function(a, b) { return (typeof b === "string" ? b in d3_rgb_names || /^(#|rgb\(|hsl\()/.test(b) : b instanceof d3_Rgb || b instanceof d3_Hsl) && d3.interpolateRgb(String(a), b); },
+  function(a, b) { return (typeof b === "number") && d3.interpolateNumber(+a, b); }
+];
+function d3_uninterpolateNumber(a, b) {
+  b = b - (a = +a) ? 1 / (b - a) : 0;
+  return function(x) { return (x - a) * b; };
+}
+
+function d3_uninterpolateClamp(a, b) {
+  b = b - (a = +a) ? 1 / (b - a) : 0;
+  return function(x) { return Math.max(0, Math.min(1, (x - a) * b)); };
+}
+d3.rgb = function(r, g, b) {
+  return arguments.length === 1
+      ? (r instanceof d3_Rgb ? d3_rgb(r.r, r.g, r.b)
+      : d3_rgb_parse("" + r, d3_rgb, d3_hsl_rgb))
+      : d3_rgb(~~r, ~~g, ~~b);
+};
+
+function d3_rgb(r, g, b) {
+  return new d3_Rgb(r, g, b);
+}
+
+function d3_Rgb(r, g, b) {
+  this.r = r;
+  this.g = g;
+  this.b = b;
+}
+
+d3_Rgb.prototype.brighter = function(k) {
+  k = Math.pow(0.7, arguments.length ? k : 1);
+  var r = this.r,
+      g = this.g,
+      b = this.b,
+      i = 30;
+  if (!r && !g && !b) return d3_rgb(i, i, i);
+  if (r && r < i) r = i;
+  if (g && g < i) g = i;
+  if (b && b < i) b = i;
+  return d3_rgb(
+      Math.min(255, Math.floor(r / k)),
+      Math.min(255, Math.floor(g / k)),
+      Math.min(255, Math.floor(b / k)));
+};
+
+d3_Rgb.prototype.darker = function(k) {
+  k = Math.pow(0.7, arguments.length ? k : 1);
+  return d3_rgb(
+      Math.floor(k * this.r),
+      Math.floor(k * this.g),
+      Math.floor(k * this.b));
+};
+
+d3_Rgb.prototype.hsl = function() {
+  return d3_rgb_hsl(this.r, this.g, this.b);
+};
+
+d3_Rgb.prototype.toString = function() {
+  return "#" + d3_rgb_hex(this.r) + d3_rgb_hex(this.g) + d3_rgb_hex(this.b);
+};
+
+function d3_rgb_hex(v) {
+  return v < 0x10
+      ? "0" + Math.max(0, v).toString(16)
+      : Math.min(255, v).toString(16);
+}
+
+function d3_rgb_parse(format, rgb, hsl) {
+  var r = 0, // red channel; int in [0, 255]
+      g = 0, // green channel; int in [0, 255]
+      b = 0, // blue channel; int in [0, 255]
+      m1, // CSS color specification match
+      m2, // CSS color specification type (e.g., rgb)
+      name;
+
+  /* Handle hsl, rgb. */
+  m1 = /([a-z]+)\((.*)\)/i.exec(format);
+  if (m1) {
+    m2 = m1[2].split(",");
+    switch (m1[1]) {
+      case "hsl": {
+        return hsl(
+          parseFloat(m2[0]), // degrees
+          parseFloat(m2[1]) / 100, // percentage
+          parseFloat(m2[2]) / 100 // percentage
+        );
+      }
+      case "rgb": {
+        return rgb(
+          d3_rgb_parseNumber(m2[0]),
+          d3_rgb_parseNumber(m2[1]),
+          d3_rgb_parseNumber(m2[2])
+        );
+      }
+    }
+  }
+
+  /* Named colors. */
+  if (name = d3_rgb_names[format]) return rgb(name.r, name.g, name.b);
+
+  /* Hexadecimal colors: #rgb and #rrggbb. */
+  if (format != null && format.charAt(0) === "#") {
+    if (format.length === 4) {
+      r = format.charAt(1); r += r;
+      g = format.charAt(2); g += g;
+      b = format.charAt(3); b += b;
+    } else if (format.length === 7) {
+      r = format.substring(1, 3);
+      g = format.substring(3, 5);
+      b = format.substring(5, 7);
+    }
+    r = parseInt(r, 16);
+    g = parseInt(g, 16);
+    b = parseInt(b, 16);
+  }
+
+  return rgb(r, g, b);
+}
+
+function d3_rgb_hsl(r, g, b) {
+  var min = Math.min(r /= 255, g /= 255, b /= 255),
+      max = Math.max(r, g, b),
+      d = max - min,
+      h,
+      s,
+      l = (max + min) / 2;
+  if (d) {
+    s = l < .5 ? d / (max + min) : d / (2 - max - min);
+    if (r == max) h = (g - b) / d + (g < b ? 6 : 0);
+    else if (g == max) h = (b - r) / d + 2;
+    else h = (r - g) / d + 4;
+    h *= 60;
+  } else {
+    s = h = 0;
+  }
+  return d3_hsl(h, s, l);
+}
+
+function d3_rgb_parseNumber(c) { // either integer or percentage
+  var f = parseFloat(c);
+  return c.charAt(c.length - 1) === "%" ? Math.round(f * 2.55) : f;
+}
+
+var d3_rgb_names = {
+  aliceblue: "#f0f8ff",
+  antiquewhite: "#faebd7",
+  aqua: "#00ffff",
+  aquamarine: "#7fffd4",
+  azure: "#f0ffff",
+  beige: "#f5f5dc",
+  bisque: "#ffe4c4",
+  black: "#000000",
+  blanchedalmond: "#ffebcd",
+  blue: "#0000ff",
+  blueviolet: "#8a2be2",
+  brown: "#a52a2a",
+  burlywood: "#deb887",
+  cadetblue: "#5f9ea0",
+  chartreuse: "#7fff00",
+  chocolate: "#d2691e",
+  coral: "#ff7f50",
+  cornflowerblue: "#6495ed",
+  cornsilk: "#fff8dc",
+  crimson: "#dc143c",
+  cyan: "#00ffff",
+  darkblue: "#00008b",
+  darkcyan: "#008b8b",
+  darkgoldenrod: "#b8860b",
+  darkgray: "#a9a9a9",
+  darkgreen: "#006400",
+  darkgrey: "#a9a9a9",
+  darkkhaki: "#bdb76b",
+  darkmagenta: "#8b008b",
+  darkolivegreen: "#556b2f",
+  darkorange: "#ff8c00",
+  darkorchid: "#9932cc",
+  darkred: "#8b0000",
+  darksalmon: "#e9967a",
+  darkseagreen: "#8fbc8f",
+  darkslateblue: "#483d8b",
+  darkslategray: "#2f4f4f",
+  darkslategrey: "#2f4f4f",
+  darkturquoise: "#00ced1",
+  darkviolet: "#9400d3",
+  deeppink: "#ff1493",
+  deepskyblue: "#00bfff",
+  dimgray: "#696969",
+  dimgrey: "#696969",
+  dodgerblue: "#1e90ff",
+  firebrick: "#b22222",
+  floralwhite: "#fffaf0",
+  forestgreen: "#228b22",
+  fuchsia: "#ff00ff",
+  gainsboro: "#dcdcdc",
+  ghostwhite: "#f8f8ff",
+  gold: "#ffd700",
+  goldenrod: "#daa520",
+  gray: "#808080",
+  green: "#008000",
+  greenyellow: "#adff2f",
+  grey: "#808080",
+  honeydew: "#f0fff0",
+  hotpink: "#ff69b4",
+  indianred: "#cd5c5c",
+  indigo: "#4b0082",
+  ivory: "#fffff0",
+  khaki: "#f0e68c",
+  lavender: "#e6e6fa",
+  lavenderblush: "#fff0f5",
+  lawngreen: "#7cfc00",
+  lemonchiffon: "#fffacd",
+  lightblue: "#add8e6",
+  lightcoral: "#f08080",
+  lightcyan: "#e0ffff",
+  lightgoldenrodyellow: "#fafad2",
+  lightgray: "#d3d3d3",
+  lightgreen: "#90ee90",
+  lightgrey: "#d3d3d3",
+  lightpink: "#ffb6c1",
+  lightsalmon: "#ffa07a",
+  lightseagreen: "#20b2aa",
+  lightskyblue: "#87cefa",
+  lightslategray: "#778899",
+  lightslategrey: "#778899",
+  lightsteelblue: "#b0c4de",
+  lightyellow: "#ffffe0",
+  lime: "#00ff00",
+  limegreen: "#32cd32",
+  linen: "#faf0e6",
+  magenta: "#ff00ff",
+  maroon: "#800000",
+  mediumaquamarine: "#66cdaa",
+  mediumblue: "#0000cd",
+  mediumorchid: "#ba55d3",
+  mediumpurple: "#9370db",
+  mediumseagreen: "#3cb371",
+  mediumslateblue: "#7b68ee",
+  mediumspringgreen: "#00fa9a",
+  mediumturquoise: "#48d1cc",
+  mediumvioletred: "#c71585",
+  midnightblue: "#191970",
+  mintcream: "#f5fffa",
+  mistyrose: "#ffe4e1",
+  moccasin: "#ffe4b5",
+  navajowhite: "#ffdead",
+  navy: "#000080",
+  oldlace: "#fdf5e6",
+  olive: "#808000",
+  olivedrab: "#6b8e23",
+  orange: "#ffa500",
+  orangered: "#ff4500",
+  orchid: "#da70d6",
+  palegoldenrod: "#eee8aa",
+  palegreen: "#98fb98",
+  paleturquoise: "#afeeee",
+  palevioletred: "#db7093",
+  papayawhip: "#ffefd5",
+  peachpuff: "#ffdab9",
+  peru: "#cd853f",
+  pink: "#ffc0cb",
+  plum: "#dda0dd",
+  powderblue: "#b0e0e6",
+  purple: "#800080",
+  red: "#ff0000",
+  rosybrown: "#bc8f8f",
+  royalblue: "#4169e1",
+  saddlebrown: "#8b4513",
+  salmon: "#fa8072",
+  sandybrown: "#f4a460",
+  seagreen: "#2e8b57",
+  seashell: "#fff5ee",
+  sienna: "#a0522d",
+  silver: "#c0c0c0",
+  skyblue: "#87ceeb",
+  slateblue: "#6a5acd",
+  slategray: "#708090",
+  slategrey: "#708090",
+  snow: "#fffafa",
+  springgreen: "#00ff7f",
+  steelblue: "#4682b4",
+  tan: "#d2b48c",
+  teal: "#008080",
+  thistle: "#d8bfd8",
+  tomato: "#ff6347",
+  turquoise: "#40e0d0",
+  violet: "#ee82ee",
+  wheat: "#f5deb3",
+  white: "#ffffff",
+  whitesmoke: "#f5f5f5",
+  yellow: "#ffff00",
+  yellowgreen: "#9acd32"
+};
+
+for (var d3_rgb_name in d3_rgb_names) {
+  d3_rgb_names[d3_rgb_name] = d3_rgb_parse(
+      d3_rgb_names[d3_rgb_name],
+      d3_rgb,
+      d3_hsl_rgb);
+}
+d3.hsl = function(h, s, l) {
+  return arguments.length === 1
+      ? (h instanceof d3_Hsl ? d3_hsl(h.h, h.s, h.l)
+      : d3_rgb_parse("" + h, d3_rgb_hsl, d3_hsl))
+      : d3_hsl(+h, +s, +l);
+};
+
+function d3_hsl(h, s, l) {
+  return new d3_Hsl(h, s, l);
+}
+
+function d3_Hsl(h, s, l) {
+  this.h = h;
+  this.s = s;
+  this.l = l;
+}
+
+d3_Hsl.prototype.brighter = function(k) {
+  k = Math.pow(0.7, arguments.length ? k : 1);
+  return d3_hsl(this.h, this.s, this.l / k);
+};
+
+d3_Hsl.prototype.darker = function(k) {
+  k = Math.pow(0.7, arguments.length ? k : 1);
+  return d3_hsl(this.h, this.s, k * this.l);
+};
+
+d3_Hsl.prototype.rgb = function() {
+  return d3_hsl_rgb(this.h, this.s, this.l);
+};
+
+d3_Hsl.prototype.toString = function() {
+  return this.rgb().toString();
+};
+
+function d3_hsl_rgb(h, s, l) {
+  var m1,
+      m2;
+
+  /* Some simple corrections for h, s and l. */
+  h = h % 360; if (h < 0) h += 360;
+  s = s < 0 ? 0 : s > 1 ? 1 : s;
+  l = l < 0 ? 0 : l > 1 ? 1 : l;
+
+  /* From FvD 13.37, CSS Color Module Level 3 */
+  m2 = l <= .5 ? l * (1 + s) : l + s - l * s;
+  m1 = 2 * l - m2;
+
+  function v(h) {
+    if (h > 360) h -= 360;
+    else if (h < 0) h += 360;
+    if (h < 60) return m1 + (m2 - m1) * h / 60;
+    if (h < 180) return m2;
+    if (h < 240) return m1 + (m2 - m1) * (240 - h) / 60;
+    return m1;
+  }
+
+  function vv(h) {
+    return Math.round(v(h) * 255);
+  }
+
+  return d3_rgb(vv(h + 120), vv(h), vv(h - 120));
+}
+function d3_selection(groups) {
+  d3_arraySubclass(groups, d3_selectionPrototype);
+  return groups;
+}
+
+var d3_select = function(s, n) { return n.querySelector(s); },
+    d3_selectAll = function(s, n) { return n.querySelectorAll(s); };
+
+// Prefer Sizzle, if available.
+if (typeof Sizzle === "function") {
+  d3_select = function(s, n) { return Sizzle(s, n)[0]; };
+  d3_selectAll = function(s, n) { return Sizzle.uniqueSort(Sizzle(s, n)); };
+}
+
+var d3_selectionPrototype = [];
+
+d3.selection = function() {
+  return d3_selectionRoot;
+};
+
+d3.selection.prototype = d3_selectionPrototype;
+d3_selectionPrototype.select = function(selector) {
+  var subgroups = [],
+      subgroup,
+      subnode,
+      group,
+      node;
+
+  if (typeof selector !== "function") selector = d3_selection_selector(selector);
+
+  for (var j = -1, m = this.length; ++j < m;) {
+    subgroups.push(subgroup = []);
+    subgroup.parentNode = (group = this[j]).parentNode;
+    for (var i = -1, n = group.length; ++i < n;) {
+      if (node = group[i]) {
+        subgroup.push(subnode = selector.call(node, node.__data__, i));
+        if (subnode && "__data__" in node) subnode.__data__ = node.__data__;
+      } else {
+        subgroup.push(null);
+      }
+    }
+  }
+
+  return d3_selection(subgroups);
+};
+
+function d3_selection_selector(selector) {
+  return function() {
+    return d3_select(selector, this);
+  };
+}
+d3_selectionPrototype.selectAll = function(selector) {
+  var subgroups = [],
+      subgroup,
+      node;
+
+  if (typeof selector !== "function") selector = d3_selection_selectorAll(selector);
+
+  for (var j = -1, m = this.length; ++j < m;) {
+    for (var group = this[j], i = -1, n = group.length; ++i < n;) {
+      if (node = group[i]) {
+        subgroups.push(subgroup = d3_array(selector.call(node, node.__data__, i)));
+        subgroup.parentNode = node;
+      }
+    }
+  }
+
+  return d3_selection(subgroups);
+};
+
+function d3_selection_selectorAll(selector) {
+  return function() {
+    return d3_selectAll(selector, this);
+  };
+}
+d3_selectionPrototype.attr = function(name, value) {
+  name = d3.ns.qualify(name);
+
+  // If no value is specified, return the first value.
+  if (arguments.length < 2) {
+    var node = this.node();
+    return name.local
+        ? node.getAttributeNS(name.space, name.local)
+        : node.getAttribute(name);
+  }
+
+  function attrNull() {
+    this.removeAttribute(name);
+  }
+
+  function attrNullNS() {
+    this.removeAttributeNS(name.space, name.local);
+  }
+
+  function attrConstant() {
+    this.setAttribute(name, value);
+  }
+
+  function attrConstantNS() {
+    this.setAttributeNS(name.space, name.local, value);
+  }
+
+  function attrFunction() {
+    var x = value.apply(this, arguments);
+    if (x == null) this.removeAttribute(name);
+    else this.setAttribute(name, x);
+  }
+
+  function attrFunctionNS() {
+    var x = value.apply(this, arguments);
+    if (x == null) this.removeAttributeNS(name.space, name.local);
+    else this.setAttributeNS(name.space, name.local, x);
+  }
+
+  return this.each(value == null
+      ? (name.local ? attrNullNS : attrNull) : (typeof value === "function"
+      ? (name.local ? attrFunctionNS : attrFunction)
+      : (name.local ? attrConstantNS : attrConstant)));
+};
+d3_selectionPrototype.classed = function(name, value) {
+  var names = name.split(d3_selection_classedWhitespace),
+      n = names.length,
+      i = -1;
+  if (arguments.length > 1) {
+    while (++i < n) d3_selection_classed.call(this, names[i], value);
+    return this;
+  } else {
+    while (++i < n) if (!d3_selection_classed.call(this, names[i])) return false;
+    return true;
+  }
+};
+
+var d3_selection_classedWhitespace = /\s+/g;
+
+function d3_selection_classed(name, value) {
+  var re = new RegExp("(^|\\s+)" + d3.requote(name) + "(\\s+|$)", "g");
+
+  // If no value is specified, return the first value.
+  if (arguments.length < 2) {
+    var node = this.node();
+    if (c = node.classList) return c.contains(name);
+    var c = node.className;
+    re.lastIndex = 0;
+    return re.test(c.baseVal != null ? c.baseVal : c);
+  }
+
+  function classedAdd() {
+    if (c = this.classList) return c.add(name);
+    var c = this.className,
+        cb = c.baseVal != null,
+        cv = cb ? c.baseVal : c;
+    re.lastIndex = 0;
+    if (!re.test(cv)) {
+      cv = d3_collapse(cv + " " + name);
+      if (cb) c.baseVal = cv;
+      else this.className = cv;
+    }
+  }
+
+  function classedRemove() {
+    if (c = this.classList) return c.remove(name);
+    var c = this.className,
+        cb = c.baseVal != null,
+        cv = cb ? c.baseVal : c;
+    cv = d3_collapse(cv.replace(re, " "));
+    if (cb) c.baseVal = cv;
+    else this.className = cv;
+  }
+
+  function classedFunction() {
+    (value.apply(this, arguments)
+        ? classedAdd
+        : classedRemove).call(this);
+  }
+
+  return this.each(typeof value === "function"
+      ? classedFunction : value
+      ? classedAdd
+      : classedRemove);
+}
+d3_selectionPrototype.style = function(name, value, priority) {
+  if (arguments.length < 3) priority = "";
+
+  // If no value is specified, return the first value.
+  if (arguments.length < 2) return window
+      .getComputedStyle(this.node(), null)
+      .getPropertyValue(name);
+
+  function styleNull() {
+    this.style.removeProperty(name);
+  }
+
+  function styleConstant() {
+    this.style.setProperty(name, value, priority);
+  }
+
+  function styleFunction() {
+    var x = value.apply(this, arguments);
+    if (x == null) this.style.removeProperty(name);
+    else this.style.setProperty(name, x, priority);
+  }
+
+  return this.each(value == null
+      ? styleNull : (typeof value === "function"
+      ? styleFunction : styleConstant));
+};
+d3_selectionPrototype.property = function(name, value) {
+
+  // If no value is specified, return the first value.
+  if (arguments.length < 2) return this.node()[name];
+
+  function propertyNull() {
+    delete this[name];
+  }
+
+  function propertyConstant() {
+    this[name] = value;
+  }
+
+  function propertyFunction() {
+    var x = value.apply(this, arguments);
+    if (x == null) delete this[name];
+    else this[name] = x;
+  }
+
+  return this.each(value == null
+      ? propertyNull : (typeof value === "function"
+      ? propertyFunction : propertyConstant));
+};
+d3_selectionPrototype.text = function(value) {
+  return arguments.length < 1 ? this.node().textContent
+      : (this.each(typeof value === "function"
+      ? function() { this.textContent = value.apply(this, arguments); }
+      : function() { this.textContent = value; }));
+};
+d3_selectionPrototype.html = function(value) {
+  return arguments.length < 1 ? this.node().innerHTML
+      : (this.each(typeof value === "function"
+      ? function() { this.innerHTML = value.apply(this, arguments); }
+      : function() { this.innerHTML = value; }));
+};
+// TODO append(node)?
+// TODO append(function)?
+d3_selectionPrototype.append = function(name) {
+  name = d3.ns.qualify(name);
+
+  function append() {
+    return this.appendChild(document.createElement(name));
+  }
+
+  function appendNS() {
+    return this.appendChild(document.createElementNS(name.space, name.local));
+  }
+
+  return this.select(name.local ? appendNS : append);
+};
+// TODO insert(node, function)?
+// TODO insert(function, string)?
+// TODO insert(function, function)?
+d3_selectionPrototype.insert = function(name, before) {
+  name = d3.ns.qualify(name);
+
+  function insert() {
+    return this.insertBefore(
+        document.createElement(name),
+        d3_select(before, this));
+  }
+
+  function insertNS() {
+    return this.insertBefore(
+        document.createElementNS(name.space, name.local),
+        d3_select(before, this));
+  }
+
+  return this.select(name.local ? insertNS : insert);
+};
+// TODO remove(selector)?
+// TODO remove(node)?
+// TODO remove(function)?
+d3_selectionPrototype.remove = function() {
+  return this.each(function() {
+    var parent = this.parentNode;
+    if (parent) parent.removeChild(this);
+  });
+};
+// TODO data(null) for clearing data?
+d3_selectionPrototype.data = function(data, join) {
+  var enter = [],
+      update = [],
+      exit = [];
+
+  function bind(group, groupData) {
+    var i,
+        n = group.length,
+        m = groupData.length,
+        n0 = Math.min(n, m),
+        n1 = Math.max(n, m),
+        updateNodes = [],
+        enterNodes = [],
+        exitNodes = [],
+        node,
+        nodeData;
+
+    if (join) {
+      var nodeByKey = {},
+          keys = [],
+          key,
+          j = groupData.length;
+
+      for (i = -1; ++i < n;) {
+        key = join.call(node = group[i], node.__data__, i);
+        if (key in nodeByKey) {
+          exitNodes[j++] = node; // duplicate key
+        } else {
+          nodeByKey[key] = node;
+        }
+        keys.push(key);
+      }
+
+      for (i = -1; ++i < m;) {
+        node = nodeByKey[key = join.call(groupData, nodeData = groupData[i], i)];
+        if (node) {
+          node.__data__ = nodeData;
+          updateNodes[i] = node;
+          enterNodes[i] = exitNodes[i] = null;
+        } else {
+          enterNodes[i] = d3_selection_dataNode(nodeData);
+          updateNodes[i] = exitNodes[i] = null;
+        }
+        delete nodeByKey[key];
+      }
+
+      for (i = -1; ++i < n;) {
+        if (keys[i] in nodeByKey) {
+          exitNodes[i] = group[i];
+        }
+      }
+    } else {
+      for (i = -1; ++i < n0;) {
+        node = group[i];
+        nodeData = groupData[i];
+        if (node) {
+          node.__data__ = nodeData;
+          updateNodes[i] = node;
+          enterNodes[i] = exitNodes[i] = null;
+        } else {
+          enterNodes[i] = d3_selection_dataNode(nodeData);
+          updateNodes[i] = exitNodes[i] = null;
+        }
+      }
+      for (; i < m; ++i) {
+        enterNodes[i] = d3_selection_dataNode(groupData[i]);
+        updateNodes[i] = exitNodes[i] = null;
+      }
+      for (; i < n1; ++i) {
+        exitNodes[i] = group[i];
+        enterNodes[i] = updateNodes[i] = null;
+      }
+    }
+
+    enterNodes.update
+        = updateNodes;
+
+    enterNodes.parentNode
+        = updateNodes.parentNode
+        = exitNodes.parentNode
+        = group.parentNode;
+
+    enter.push(enterNodes);
+    update.push(updateNodes);
+    exit.push(exitNodes);
+  }
+
+  var i = -1,
+      n = this.length,
+      group;
+  if (typeof data === "function") {
+    while (++i < n) {
+      bind(group = this[i], data.call(group, group.parentNode.__data__, i));
+    }
+  } else {
+    while (++i < n) {
+      bind(group = this[i], data);
+    }
+  }
+
+  var selection = d3_selection(update);
+  selection.enter = function() { return d3_selection_enter(enter); };
+  selection.exit = function() { return d3_selection(exit); };
+  return selection;
+};
+
+function d3_selection_dataNode(data) {
+  return {__data__: data};
+}
+// TODO preserve null elements to maintain index?
+d3_selectionPrototype.filter = function(filter) {
+  var subgroups = [],
+      subgroup,
+      group,
+      node;
+
+  for (var j = 0, m = this.length; j < m; j++) {
+    subgroups.push(subgroup = []);
+    subgroup.parentNode = (group = this[j]).parentNode;
+    for (var i = 0, n = group.length; i < n; i++) {
+      if ((node = group[i]) && filter.call(node, node.__data__, i)) {
+        subgroup.push(node);
+      }
+    }
+  }
+
+  return d3_selection(subgroups);
+};
+d3_selectionPrototype.map = function(map) {
+  return this.each(function() {
+    this.__data__ = map.apply(this, arguments);
+  });
+};
+d3_selectionPrototype.sort = function(comparator) {
+  comparator = d3_selection_sortComparator.apply(this, arguments);
+  for (var j = 0, m = this.length; j < m; j++) {
+    for (var group = this[j].sort(comparator), i = 1, n = group.length, prev = group[0]; i < n; i++) {
+      var node = group[i];
+      if (node) {
+        if (prev) prev.parentNode.insertBefore(node, prev.nextSibling);
+        prev = node;
+      }
+    }
+  }
+  return this;
+};
+
+function d3_selection_sortComparator(comparator) {
+  if (!arguments.length) comparator = d3.ascending;
+  return function(a, b) {
+    return comparator(a && a.__data__, b && b.__data__);
+  };
+}
+// type can be namespaced, e.g., "click.foo"
+// listener can be null for removal
+d3_selectionPrototype.on = function(type, listener, capture) {
+  if (arguments.length < 3) capture = false;
+
+  // parse the type specifier
+  var name = "__on" + type, i = type.indexOf(".");
+  if (i > 0) type = type.substring(0, i);
+
+  // if called with only one argument, return the current listener
+  if (arguments.length < 2) return (i = this.node()[name]) && i._;
+
+  // remove the old event listener, and add the new event listener
+  return this.each(function(d, i) {
+    var node = this;
+
+    if (node[name]) node.removeEventListener(type, node[name], capture);
+    if (listener) node.addEventListener(type, node[name] = l, capture);
+
+    // wrapped event listener that preserves i
+    function l(e) {
+      var o = d3.event; // Events can be reentrant (e.g., focus).
+      d3.event = e;
+      try {
+        listener.call(node, node.__data__, i);
+      } finally {
+        d3.event = o;
+      }
+    }
+
+    // stash the unwrapped listener for retrieval
+    l._ = listener;
+  });
+};
+d3_selectionPrototype.each = function(callback) {
+  for (var j = -1, m = this.length; ++j < m;) {
+    for (var group = this[j], i = -1, n = group.length; ++i < n;) {
+      var node = group[i];
+      if (node) callback.call(node, node.__data__, i, j);
+    }
+  }
+  return this;
+};
+//
+// Note: assigning to the arguments array simultaneously changes the value of
+// the corresponding argument!
+//
+// TODO The `this` argument probably shouldn't be the first argument to the
+// callback, anyway, since it's redundant. However, that will require a major
+// version bump due to backwards compatibility, so I'm not changing it right
+// away.
+//
+d3_selectionPrototype.call = function(callback) {
+  callback.apply(this, (arguments[0] = this, arguments));
+  return this;
+};
+d3_selectionPrototype.empty = function() {
+  return !this.node();
+};
+d3_selectionPrototype.node = function(callback) {
+  for (var j = 0, m = this.length; j < m; j++) {
+    for (var group = this[j], i = 0, n = group.length; i < n; i++) {
+      var node = group[i];
+      if (node) return node;
+    }
+  }
+  return null;
+};
+d3_selectionPrototype.transition = function() {
+  var subgroups = [],
+      subgroup,
+      node;
+
+  for (var j = -1, m = this.length; ++j < m;) {
+    subgroups.push(subgroup = []);
+    for (var group = this[j], i = -1, n = group.length; ++i < n;) {
+      subgroup.push((node = group[i]) ? {node: node, delay: 0, duration: 250} : null);
+    }
+  }
+
+  return d3_transition(subgroups, d3_transitionInheritId || ++d3_transitionId, Date.now());
+};
+var d3_selectionRoot = d3_selection([[document]]);
+
+d3_selectionRoot[0].parentNode = document.documentElement;
+
+// TODO fast singleton implementation!
+// TODO select(function)
+d3.select = function(selector) {
+  return typeof selector === "string"
+      ? d3_selectionRoot.select(selector)
+      : d3_selection([[selector]]); // assume node
+};
+
+// TODO selectAll(function)
+d3.selectAll = function(selector) {
+  return typeof selector === "string"
+      ? d3_selectionRoot.selectAll(selector)
+      : d3_selection([d3_array(selector)]); // assume node[]
+};
+function d3_selection_enter(selection) {
+  d3_arraySubclass(selection, d3_selection_enterPrototype);
+  return selection;
+}
+
+var d3_selection_enterPrototype = [];
+
+d3_selection_enterPrototype.append = d3_selectionPrototype.append;
+d3_selection_enterPrototype.insert = d3_selectionPrototype.insert;
+d3_selection_enterPrototype.empty = d3_selectionPrototype.empty;
+d3_selection_enterPrototype.node = d3_selectionPrototype.node;
+d3_selection_enterPrototype.select = function(selector) {
+  var subgroups = [],
+      subgroup,
+      subnode,
+      upgroup,
+      group,
+      node;
+
+  for (var j = -1, m = this.length; ++j < m;) {
+    upgroup = (group = this[j]).update;
+    subgroups.push(subgroup = []);
+    subgroup.parentNode = group.parentNode;
+    for (var i = -1, n = group.length; ++i < n;) {
+      if (node = group[i]) {
+        subgroup.push(upgroup[i] = subnode = selector.call(group.parentNode, node.__data__, i));
+        subnode.__data__ = node.__data__;
+      } else {
+        subgroup.push(null);
+      }
+    }
+  }
+
+  return d3_selection(subgroups);
+};
+function d3_transition(groups, id, time) {
+  d3_arraySubclass(groups, d3_transitionPrototype);
+
+  var tweens = {},
+      event = d3.dispatch("start", "end"),
+      ease = d3_transitionEase;
+
+  groups.id = id;
+
+  groups.time = time;
+
+  groups.tween = function(name, tween) {
+    if (arguments.length < 2) return tweens[name];
+    if (tween == null) delete tweens[name];
+    else tweens[name] = tween;
+    return groups;
+  };
+
+  groups.ease = function(value) {
+    if (!arguments.length) return ease;
+    ease = typeof value === "function" ? value : d3.ease.apply(d3, arguments);
+    return groups;
+  };
+
+  groups.each = function(type, listener) {
+    if (arguments.length < 2) return d3_transition_each.call(groups, type);
+    event[type].add(listener);
+    return groups;
+  };
+
+  d3.timer(function(elapsed) {
+    groups.each(function(d, i, j) {
+      var tweened = [],
+          node = this,
+          delay = groups[j][i].delay,
+          duration = groups[j][i].duration,
+          lock = node.__transition__ || (node.__transition__ = {active: 0, count: 0});
+
+      ++lock.count;
+
+      delay <= elapsed ? start(elapsed) : d3.timer(start, delay, time);
+
+      function start(elapsed) {
+        if (lock.active > id) return stop();
+        lock.active = id;
+
+        for (var tween in tweens) {
+          if (tween = tweens[tween].call(node, d, i)) {
+            tweened.push(tween);
+          }
+        }
+
+        event.start.dispatch.call(node, d, i);
+        if (!tick(elapsed)) d3.timer(tick, 0, time);
+        return 1;
+      }
+
+      function tick(elapsed) {
+        if (lock.active !== id) return stop();
+
+        var t = (elapsed - delay) / duration,
+            e = ease(t),
+            n = tweened.length;
+
+        while (n > 0) {
+          tweened[--n].call(node, e);
+        }
+
+        if (t >= 1) {
+          stop();
+          d3_transitionInheritId = id;
+          event.end.dispatch.call(node, d, i);
+          d3_transitionInheritId = 0;
+          return 1;
+        }
+      }
+
+      function stop() {
+        if (!--lock.count) delete node.__transition__;
+        return 1;
+      }
+    });
+    return 1;
+  }, 0, time);
+
+  return groups;
+}
+
+var d3_transitionRemove = {};
+
+function d3_transitionNull(d, i, a) {
+  return a != "" && d3_transitionRemove;
+}
+
+function d3_transitionTween(b) {
+
+  function transitionFunction(d, i, a) {
+    var v = b.call(this, d, i);
+    return v == null
+        ? a != "" && d3_transitionRemove
+        : a != v && d3.interpolate(a, v);
+  }
+
+  function transitionString(d, i, a) {
+    return a != b && d3.interpolate(a, b);
+  }
+
+  return typeof b === "function" ? transitionFunction
+      : b == null ? d3_transitionNull
+      : (b += "", transitionString);
+}
+
+var d3_transitionPrototype = [],
+    d3_transitionId = 0,
+    d3_transitionInheritId = 0,
+    d3_transitionEase = d3.ease("cubic-in-out");
+
+d3_transitionPrototype.call = d3_selectionPrototype.call;
+
+d3.transition = function() {
+  return d3_selectionRoot.transition();
+};
+
+d3.transition.prototype = d3_transitionPrototype;
+d3_transitionPrototype.select = function(selector) {
+  var subgroups = [],
+      subgroup,
+      subnode,
+      node;
+
+  if (typeof selector !== "function") selector = d3_selection_selector(selector);
+
+  for (var j = -1, m = this.length; ++j < m;) {
+    subgroups.push(subgroup = []);
+    for (var group = this[j], i = -1, n = group.length; ++i < n;) {
+      if ((node = group[i]) && (subnode = selector.call(node.node, node.node.__data__, i))) {
+        if ("__data__" in node.node) subnode.__data__ = node.node.__data__;
+        subgroup.push({node: subnode, delay: node.delay, duration: node.duration});
+      } else {
+        subgroup.push(null);
+      }
+    }
+  }
+
+  return d3_transition(subgroups, this.id, this.time).ease(this.ease());
+};
+d3_transitionPrototype.selectAll = function(selector) {
+  var subgroups = [],
+      subgroup,
+      subnodes,
+      node;
+
+  if (typeof selector !== "function") selector = d3_selection_selectorAll(selector);
+
+  for (var j = -1, m = this.length; ++j < m;) {
+    for (var group = this[j], i = -1, n = group.length; ++i < n;) {
+      if (node = group[i]) {
+        subnodes = selector.call(node.node, node.node.__data__, i);
+        subgroups.push(subgroup = []);
+        for (var k = -1, o = subnodes.length; ++k < o;) {
+          subgroup.push({node: subnodes[k], delay: node.delay, duration: node.duration});
+        }
+      }
+    }
+  }
+
+  return d3_transition(subgroups, this.id, this.time).ease(this.ease());
+};
+d3_transitionPrototype.attr = function(name, value) {
+  return this.attrTween(name, d3_transitionTween(value));
+};
+
+d3_transitionPrototype.attrTween = function(nameNS, tween) {
+  var name = d3.ns.qualify(nameNS);
+
+  function attrTween(d, i) {
+    var f = tween.call(this, d, i, this.getAttribute(name));
+    return f === d3_transitionRemove
+        ? (this.removeAttribute(name), null)
+        : f && function(t) { this.setAttribute(name, f(t)); };
+  }
+
+  function attrTweenNS(d, i) {
+    var f = tween.call(this, d, i, this.getAttributeNS(name.space, name.local));
+    return f === d3_transitionRemove
+        ? (this.removeAttributeNS(name.space, name.local), null)
+        : f && function(t) { this.setAttributeNS(name.space, name.local, f(t)); };
+  }
+
+  return this.tween("attr." + nameNS, name.local ? attrTweenNS : attrTween);
+};
+d3_transitionPrototype.style = function(name, value, priority) {
+  if (arguments.length < 3) priority = "";
+  return this.styleTween(name, d3_transitionTween(value), priority);
+};
+
+d3_transitionPrototype.styleTween = function(name, tween, priority) {
+  if (arguments.length < 3) priority = "";
+  return this.tween("style." + name, function(d, i) {
+    var f = tween.call(this, d, i, window.getComputedStyle(this, null).getPropertyValue(name));
+    return f === d3_transitionRemove
+        ? (this.style.removeProperty(name), null)
+        : f && function(t) { this.style.setProperty(name, f(t), priority); };
+  });
+};
+d3_transitionPrototype.text = function(value) {
+  return this.tween("text", function(d, i) {
+    this.textContent = typeof value === "function"
+        ? value.call(this, d, i)
+        : value;
+  });
+};
+d3_transitionPrototype.remove = function() {
+  return this.each("end", function() {
+    var p;
+    if (!this.__transition__ && (p = this.parentNode)) p.removeChild(this);
+  });
+};
+d3_transitionPrototype.delay = function(value) {
+  var groups = this;
+  return groups.each(typeof value === "function"
+      ? function(d, i, j) { groups[j][i].delay = +value.apply(this, arguments); }
+      : (value = +value, function(d, i, j) { groups[j][i].delay = value; }));
+};
+d3_transitionPrototype.duration = function(value) {
+  var groups = this;
+  return groups.each(typeof value === "function"
+      ? function(d, i, j) { groups[j][i].duration = +value.apply(this, arguments); }
+      : (value = +value, function(d, i, j) { groups[j][i].duration = value; }));
+};
+function d3_transition_each(callback) {
+  for (var j = 0, m = this.length; j < m; j++) {
+    for (var group = this[j], i = 0, n = group.length; i < n; i++) {
+      var node = group[i];
+      if (node) callback.call(node = node.node, node.__data__, i, j);
+    }
+  }
+  return this;
+}
+d3_transitionPrototype.transition = function() {
+  return this.select(d3_this);
+};
+var d3_timer_queue = null,
+    d3_timer_interval, // is an interval (or frame) active?
+    d3_timer_timeout; // is a timeout active?
+
+// The timer will continue to fire until callback returns true.
+d3.timer = function(callback, delay, then) {
+  var found = false,
+      t0,
+      t1 = d3_timer_queue;
+
+  if (arguments.length < 3) {
+    if (arguments.length < 2) delay = 0;
+    else if (!isFinite(delay)) return;
+    then = Date.now();
+  }
+
+  // See if the callback's already in the queue.
+  while (t1) {
+    if (t1.callback === callback) {
+      t1.then = then;
+      t1.delay = delay;
+      found = true;
+      break;
+    }
+    t0 = t1;
+    t1 = t1.next;
+  }
+
+  // Otherwise, add the callback to the queue.
+  if (!found) d3_timer_queue = {
+    callback: callback,
+    then: then,
+    delay: delay,
+    next: d3_timer_queue
+  };
+
+  // Start animatin'!
+  if (!d3_timer_interval) {
+    d3_timer_timeout = clearTimeout(d3_timer_timeout);
+    d3_timer_interval = 1;
+    d3_timer_frame(d3_timer_step);
+  }
+}
+
+function d3_timer_step() {
+  var elapsed,
+      now = Date.now(),
+      t1 = d3_timer_queue;
+
+  while (t1) {
+    elapsed = now - t1.then;
+    if (elapsed >= t1.delay) t1.flush = t1.callback(elapsed);
+    t1 = t1.next;
+  }
+
+  var delay = d3_timer_flush() - now;
+  if (delay > 24) {
+    if (isFinite(delay)) {
+      clearTimeout(d3_timer_timeout);
+      d3_timer_timeout = setTimeout(d3_timer_step, delay);
+    }
+    d3_timer_interval = 0;
+  } else {
+    d3_timer_interval = 1;
+    d3_timer_frame(d3_timer_step);
+  }
+}
+
+d3.timer.flush = function() {
+  var elapsed,
+      now = Date.now(),
+      t1 = d3_timer_queue;
+
+  while (t1) {
+    elapsed = now - t1.then;
+    if (!t1.delay) t1.flush = t1.callback(elapsed);
+    t1 = t1.next;
+  }
+
+  d3_timer_flush();
+};
+
+// Flush after callbacks, to avoid concurrent queue modification.
+function d3_timer_flush() {
+  var t0 = null,
+      t1 = d3_timer_queue,
+      then = Infinity;
+  while (t1) {
+    if (t1.flush) {
+      t1 = t0 ? t0.next = t1.next : d3_timer_queue = t1.next;
+    } else {
+      then = Math.min(then, t1.then + t1.delay);
+      t1 = (t0 = t1).next;
+    }
+  }
+  return then;
+}
+
+var d3_timer_frame = window.requestAnimationFrame
+    || window.webkitRequestAnimationFrame
+    || window.mozRequestAnimationFrame
+    || window.oRequestAnimationFrame
+    || window.msRequestAnimationFrame
+    || function(callback) { setTimeout(callback, 17); };
+function d3_noop() {}
+d3.scale = {};
+
+function d3_scaleExtent(domain) {
+  var start = domain[0], stop = domain[domain.length - 1];
+  return start < stop ? [start, stop] : [stop, start];
+}
+function d3_scale_nice(domain, nice) {
+  var i0 = 0,
+      i1 = domain.length - 1,
+      x0 = domain[i0],
+      x1 = domain[i1],
+      dx;
+
+  if (x1 < x0) {
+    dx = i0; i0 = i1; i1 = dx;
+    dx = x0; x0 = x1; x1 = dx;
+  }
+
+  if (dx = x1 - x0) {
+    nice = nice(dx);
+    domain[i0] = nice.floor(x0);
+    domain[i1] = nice.ceil(x1);
+  }
+
+  return domain;
+}
+
+function d3_scale_niceDefault() {
+  return Math;
+}
+d3.scale.linear = function() {
+  return d3_scale_linear([0, 1], [0, 1], d3.interpolate, false);
+};
+
+function d3_scale_linear(domain, range, interpolate, clamp) {
+  var output,
+      input;
+
+  function rescale() {
+    var linear = domain.length == 2 ? d3_scale_bilinear : d3_scale_polylinear,
+        uninterpolate = clamp ? d3_uninterpolateClamp : d3_uninterpolateNumber;
+    output = linear(domain, range, uninterpolate, interpolate);
+    input = linear(range, domain, uninterpolate, d3.interpolate);
+    return scale;
+  }
+
+  function scale(x) {
+    return output(x);
+  }
+
+  // Note: requires range is coercible to number!
+  scale.invert = function(y) {
+    return input(y);
+  };
+
+  scale.domain = function(x) {
+    if (!arguments.length) return domain;
+    domain = x.map(Number);
+    return rescale();
+  };
+
+  scale.range = function(x) {
+    if (!arguments.length) return range;
+    range = x;
+    return rescale();
+  };
+
+  scale.rangeRound = function(x) {
+    return scale.range(x).interpolate(d3.interpolateRound);
+  };
+
+  scale.clamp = function(x) {
+    if (!arguments.length) return clamp;
+    clamp = x;
+    return rescale();
+  };
+
+  scale.interpolate = function(x) {
+    if (!arguments.length) return interpolate;
+    interpolate = x;
+    return rescale();
+  };
+
+  scale.ticks = function(m) {
+    return d3_scale_linearTicks(domain, m);
+  };
+
+  scale.tickFormat = function(m) {
+    return d3_scale_linearTickFormat(domain, m);
+  };
+
+  scale.nice = function() {
+    d3_scale_nice(domain, d3_scale_linearNice);
+    return rescale();
+  };
+
+  scale.copy = function() {
+    return d3_scale_linear(domain, range, interpolate, clamp);
+  };
+
+  return rescale();
+};
+
+function d3_scale_linearRebind(scale, linear) {
+  scale.range = d3.rebind(scale, linear.range);
+  scale.rangeRound = d3.rebind(scale, linear.rangeRound);
+  scale.interpolate = d3.rebind(scale, linear.interpolate);
+  scale.clamp = d3.rebind(scale, linear.clamp);
+  return scale;
+}
+
+function d3_scale_linearNice(dx) {
+  dx = Math.pow(10, Math.round(Math.log(dx) / Math.LN10) - 1);
+  return {
+    floor: function(x) { return Math.floor(x / dx) * dx; },
+    ceil: function(x) { return Math.ceil(x / dx) * dx; }
+  };
+}
+
+// TODO Dates? Ugh.
+function d3_scale_linearTickRange(domain, m) {
+  var extent = d3_scaleExtent(domain),
+      span = extent[1] - extent[0],
+      step = Math.pow(10, Math.floor(Math.log(span / m) / Math.LN10)),
+      err = m / span * step;
+
+  // Filter ticks to get closer to the desired count.
+  if (err <= .15) step *= 10;
+  else if (err <= .35) step *= 5;
+  else if (err <= .75) step *= 2;
+
+  // Round start and stop values to step interval.
+  extent[0] = Math.ceil(extent[0] / step) * step;
+  extent[1] = Math.floor(extent[1] / step) * step + step * .5; // inclusive
+  extent[2] = step;
+  return extent;
+}
+
+function d3_scale_linearTicks(domain, m) {
+  return d3.range.apply(d3, d3_scale_linearTickRange(domain, m));
+}
+
+function d3_scale_linearTickFormat(domain, m) {
+  return d3.format(",." + Math.max(0, -Math.floor(Math.log(d3_scale_linearTickRange(domain, m)[2]) / Math.LN10 + .01)) + "f");
+}
+function d3_scale_bilinear(domain, range, uninterpolate, interpolate) {
+  var u = uninterpolate(domain[0], domain[1]),
+      i = interpolate(range[0], range[1]);
+  return function(x) {
+    return i(u(x));
+  };
+}
+function d3_scale_polylinear(domain, range, uninterpolate, interpolate) {
+  var u = [],
+      i = [],
+      j = 0,
+      n = domain.length;
+
+  while (++j < n) {
+    u.push(uninterpolate(domain[j - 1], domain[j]));
+    i.push(interpolate(range[j - 1], range[j]));
+  }
+
+  return function(x) {
+    var j = d3.bisect(domain, x, 1, domain.length - 1) - 1;
+    return i[j](u[j](x));
+  };
+}
+d3.scale.log = function() {
+  return d3_scale_log(d3.scale.linear(), d3_scale_logp);
+};
+
+function d3_scale_log(linear, log) {
+  var pow = log.pow;
+
+  function scale(x) {
+    return linear(log(x));
+  }
+
+  scale.invert = function(x) {
+    return pow(linear.invert(x));
+  };
+
+  scale.domain = function(x) {
+    if (!arguments.length) return linear.domain().map(pow);
+    log = x[0] < 0 ? d3_scale_logn : d3_scale_logp;
+    pow = log.pow;
+    linear.domain(x.map(log));
+    return scale;
+  };
+
+  scale.nice = function() {
+    linear.domain(d3_scale_nice(linear.domain(), d3_scale_niceDefault));
+    return scale;
+  };
+
+  scale.ticks = function() {
+    var extent = d3_scaleExtent(linear.domain()),
+        ticks = [];
+    if (extent.every(isFinite)) {
+      var i = Math.floor(extent[0]),
+          j = Math.ceil(extent[1]),
+          u = Math.round(pow(extent[0])),
+          v = Math.round(pow(extent[1]));
+      if (log === d3_scale_logn) {
+        ticks.push(pow(i));
+        for (; i++ < j;) for (var k = 9; k > 0; k--) ticks.push(pow(i) * k);
+      } else {
+        for (; i < j; i++) for (var k = 1; k < 10; k++) ticks.push(pow(i) * k);
+        ticks.push(pow(i));
+      }
+      for (i = 0; ticks[i] < u; i++) {} // strip small values
+      for (j = ticks.length; ticks[j - 1] > v; j--) {} // strip big values
+      ticks = ticks.slice(i, j);
+    }
+    return ticks;
+  };
+
+  scale.tickFormat = function(n, format) {
+    if (arguments.length < 2) format = d3_scale_logFormat;
+    if (arguments.length < 1) return format;
+    var k = n / scale.ticks().length,
+        f = log === d3_scale_logn ? (e = -1e-15, Math.floor) : (e = 1e-15, Math.ceil),
+        e;
+    return function(d) {
+      return d / pow(f(log(d) + e)) < k ? format(d) : "";
+    };
+  };
+
+  scale.copy = function() {
+    return d3_scale_log(linear.copy(), log);
+  };
+
+  return d3_scale_linearRebind(scale, linear);
+};
+
+var d3_scale_logFormat = d3.format("e");
+
+function d3_scale_logp(x) {
+  return Math.log(x) / Math.LN10;
+}
+
+function d3_scale_logn(x) {
+  return -Math.log(-x) / Math.LN10;
+}
+
+d3_scale_logp.pow = function(x) {
+  return Math.pow(10, x);
+};
+
+d3_scale_logn.pow = function(x) {
+  return -Math.pow(10, -x);
+};
+d3.scale.pow = function() {
+  return d3_scale_pow(d3.scale.linear(), 1);
+};
+
+function d3_scale_pow(linear, exponent) {
+  var powp = d3_scale_powPow(exponent),
+      powb = d3_scale_powPow(1 / exponent);
+
+  function scale(x) {
+    return linear(powp(x));
+  }
+
+  scale.invert = function(x) {
+    return powb(linear.invert(x));
+  };
+
+  scale.domain = function(x) {
+    if (!arguments.length) return linear.domain().map(powb);
+    linear.domain(x.map(powp));
+    return scale;
+  };
+
+  scale.ticks = function(m) {
+    return d3_scale_linearTicks(scale.domain(), m);
+  };
+
+  scale.tickFormat = function(m) {
+    return d3_scale_linearTickFormat(scale.domain(), m);
+  };
+
+  scale.nice = function() {
+    return scale.domain(d3_scale_nice(scale.domain(), d3_scale_linearNice));
+  };
+
+  scale.exponent = function(x) {
+    if (!arguments.length) return exponent;
+    var domain = scale.domain();
+    powp = d3_scale_powPow(exponent = x);
+    powb = d3_scale_powPow(1 / exponent);
+    return scale.domain(domain);
+  };
+
+  scale.copy = function() {
+    return d3_scale_pow(linear.copy(), exponent);
+  };
+
+  return d3_scale_linearRebind(scale, linear);
+};
+
+function d3_scale_powPow(e) {
+  return function(x) {
+    return x < 0 ? -Math.pow(-x, e) : Math.pow(x, e);
+  };
+}
+d3.scale.sqrt = function() {
+  return d3.scale.pow().exponent(.5);
+};
+d3.scale.ordinal = function() {
+  return d3_scale_ordinal([], {t: "range", x: []});
+};
+
+function d3_scale_ordinal(domain, ranger) {
+  var index,
+      range,
+      rangeBand;
+
+  function scale(x) {
+    return range[((index[x] || (index[x] = domain.push(x))) - 1) % range.length];
+  }
+
+  scale.domain = function(x) {
+    if (!arguments.length) return domain;
+    domain = [];
+    index = {};
+    var i = -1, n = x.length, xi;
+    while (++i < n) if (!index[xi = x[i]]) index[xi] = domain.push(xi);
+    return scale[ranger.t](ranger.x, ranger.p);
+  };
+
+  scale.range = function(x) {
+    if (!arguments.length) return range;
+    range = x;
+    rangeBand = 0;
+    ranger = {t: "range", x: x};
+    return scale;
+  };
+
+  scale.rangePoints = function(x, padding) {
+    if (arguments.length < 2) padding = 0;
+    var start = x[0],
+        stop = x[1],
+        step = (stop - start) / (domain.length - 1 + padding);
+    range = domain.length < 2 ? [(start + stop) / 2] : d3.range(start + step * padding / 2, stop + step / 2, step);
+    rangeBand = 0;
+    ranger = {t: "rangePoints", x: x, p: padding};
+    return scale;
+  };
+
+  scale.rangeBands = function(x, padding) {
+    if (arguments.length < 2) padding = 0;
+    var start = x[0],
+        stop = x[1],
+        step = (stop - start) / (domain.length + padding);
+    range = d3.range(start + step * padding, stop, step);
+    rangeBand = step * (1 - padding);
+    ranger = {t: "rangeBands", x: x, p: padding};
+    return scale;
+  };
+
+  scale.rangeRoundBands = function(x, padding) {
+    if (arguments.length < 2) padding = 0;
+    var start = x[0],
+        stop = x[1],
+        step = Math.floor((stop - start) / (domain.length + padding)),
+        err = stop - start - (domain.length - padding) * step;
+    range = d3.range(start + Math.round(err / 2), stop, step);
+    rangeBand = Math.round(step * (1 - padding));
+    ranger = {t: "rangeRoundBands", x: x, p: padding};
+    return scale;
+  };
+
+  scale.rangeBand = function() {
+    return rangeBand;
+  };
+
+  scale.copy = function() {
+    return d3_scale_ordinal(domain, ranger);
+  };
+
+  return scale.domain(domain);
+};
+/*
+ * This product includes color specifications and designs developed by Cynthia
+ * Brewer (http://colorbrewer.org/). See lib/colorbrewer for more information.
+ */
+
+d3.scale.category10 = function() {
+  return d3.scale.ordinal().range(d3_category10);
+};
+
+d3.scale.category20 = function() {
+  return d3.scale.ordinal().range(d3_category20);
+};
+
+d3.scale.category20b = function() {
+  return d3.scale.ordinal().range(d3_category20b);
+};
+
+d3.scale.category20c = function() {
+  return d3.scale.ordinal().range(d3_category20c);
+};
+
+var d3_category10 = [
+  "#1f77b4", "#ff7f0e", "#2ca02c", "#d62728", "#9467bd",
+  "#8c564b", "#e377c2", "#7f7f7f", "#bcbd22", "#17becf"
+];
+
+var d3_category20 = [
+  "#1f77b4", "#aec7e8",
+  "#ff7f0e", "#ffbb78",
+  "#2ca02c", "#98df8a",
+  "#d62728", "#ff9896",
+  "#9467bd", "#c5b0d5",
+  "#8c564b", "#c49c94",
+  "#e377c2", "#f7b6d2",
+  "#7f7f7f", "#c7c7c7",
+  "#bcbd22", "#dbdb8d",
+  "#17becf", "#9edae5"
+];
+
+var d3_category20b = [
+  "#393b79", "#5254a3", "#6b6ecf", "#9c9ede",
+  "#637939", "#8ca252", "#b5cf6b", "#cedb9c",
+  "#8c6d31", "#bd9e39", "#e7ba52", "#e7cb94",
+  "#843c39", "#ad494a", "#d6616b", "#e7969c",
+  "#7b4173", "#a55194", "#ce6dbd", "#de9ed6"
+];
+
+var d3_category20c = [
+  "#3182bd", "#6baed6", "#9ecae1", "#c6dbef",
+  "#e6550d", "#fd8d3c", "#fdae6b", "#fdd0a2",
+  "#31a354", "#74c476", "#a1d99b", "#c7e9c0",
+  "#756bb1", "#9e9ac8", "#bcbddc", "#dadaeb",
+  "#636363", "#969696", "#bdbdbd", "#d9d9d9"
+];
+d3.scale.quantile = function() {
+  return d3_scale_quantile([], []);
+};
+
+function d3_scale_quantile(domain, range) {
+  var thresholds;
+
+  function rescale() {
+    var k = 0,
+        n = domain.length,
+        q = range.length;
+    thresholds = [];
+    while (++k < q) thresholds[k - 1] = d3.quantile(domain, k / q);
+    return scale;
+  }
+
+  function scale(x) {
+    if (isNaN(x = +x)) return NaN;
+    return range[d3.bisect(thresholds, x)];
+  }
+
+  scale.domain = function(x) {
+    if (!arguments.length) return domain;
+    domain = x.filter(function(d) { return !isNaN(d); }).sort(d3.ascending);
+    return rescale();
+  };
+
+  scale.range = function(x) {
+    if (!arguments.length) return range;
+    range = x;
+    return rescale();
+  };
+
+  scale.quantiles = function() {
+    return thresholds;
+  };
+
+  scale.copy = function() {
+    return d3_scale_quantile(domain, range); // copy on write!
+  };
+
+  return rescale();
+};
+d3.scale.quantize = function() {
+  return d3_scale_quantize(0, 1, [0, 1]);
+};
+
+function d3_scale_quantize(x0, x1, range) {
+  var kx, i;
+
+  function scale(x) {
+    return range[Math.max(0, Math.min(i, Math.floor(kx * (x - x0))))];
+  }
+
+  function rescale() {
+    kx = range.length / (x1 - x0);
+    i = range.length - 1;
+    return scale;
+  }
+
+  scale.domain = function(x) {
+    if (!arguments.length) return [x0, x1];
+    x0 = +x[0];
+    x1 = +x[x.length - 1];
+    return rescale();
+  };
+
+  scale.range = function(x) {
+    if (!arguments.length) return range;
+    range = x;
+    return rescale();
+  };
+
+  scale.copy = function() {
+    return d3_scale_quantize(x0, x1, range); // copy on write
+  };
+
+  return rescale();
+};
+d3.svg = {};
+d3.svg.arc = function() {
+  var innerRadius = d3_svg_arcInnerRadius,
+      outerRadius = d3_svg_arcOuterRadius,
+      startAngle = d3_svg_arcStartAngle,
+      endAngle = d3_svg_arcEndAngle;
+
+  function arc() {
+    var r0 = innerRadius.apply(this, arguments),
+        r1 = outerRadius.apply(this, arguments),
+        a0 = startAngle.apply(this, arguments) + d3_svg_arcOffset,
+        a1 = endAngle.apply(this, arguments) + d3_svg_arcOffset,
+        da = (a1 < a0 && (da = a0, a0 = a1, a1 = da), a1 - a0),
+        df = da < Math.PI ? "0" : "1",
+        c0 = Math.cos(a0),
+        s0 = Math.sin(a0),
+        c1 = Math.cos(a1),
+        s1 = Math.sin(a1);
+    return da >= d3_svg_arcMax
+      ? (r0
+      ? "M0," + r1
+      + "A" + r1 + "," + r1 + " 0 1,1 0," + (-r1)
+      + "A" + r1 + "," + r1 + " 0 1,1 0," + r1
+      + "M0," + r0
+      + "A" + r0 + "," + r0 + " 0 1,0 0," + (-r0)
+      + "A" + r0 + "," + r0 + " 0 1,0 0," + r0
+      + "Z"
+      : "M0," + r1
+      + "A" + r1 + "," + r1 + " 0 1,1 0," + (-r1)
+      + "A" + r1 + "," + r1 + " 0 1,1 0," + r1
+      + "Z")
+      : (r0
+      ? "M" + r1 * c0 + "," + r1 * s0
+      + "A" + r1 + "," + r1 + " 0 " + df + ",1 " + r1 * c1 + "," + r1 * s1
+      + "L" + r0 * c1 + "," + r0 * s1
+      + "A" + r0 + "," + r0 + " 0 " + df + ",0 " + r0 * c0 + "," + r0 * s0
+      + "Z"
+      : "M" + r1 * c0 + "," + r1 * s0
+      + "A" + r1 + "," + r1 + " 0 " + df + ",1 " + r1 * c1 + "," + r1 * s1
+      + "L0,0"
+      + "Z");
+  }
+
+  arc.innerRadius = function(v) {
+    if (!arguments.length) return innerRadius;
+    innerRadius = d3.functor(v);
+    return arc;
+  };
+
+  arc.outerRadius = function(v) {
+    if (!arguments.length) return outerRadius;
+    outerRadius = d3.functor(v);
+    return arc;
+  };
+
+  arc.startAngle = function(v) {
+    if (!arguments.length) return startAngle;
+    startAngle = d3.functor(v);
+    return arc;
+  };
+
+  arc.endAngle = function(v) {
+    if (!arguments.length) return endAngle;
+    endAngle = d3.functor(v);
+    return arc;
+  };
+
+  arc.centroid = function() {
+    var r = (innerRadius.apply(this, arguments)
+        + outerRadius.apply(this, arguments)) / 2,
+        a = (startAngle.apply(this, arguments)
+        + endAngle.apply(this, arguments)) / 2 + d3_svg_arcOffset;
+    return [Math.cos(a) * r, Math.sin(a) * r];
+  };
+
+  return arc;
+};
+
+var d3_svg_arcOffset = -Math.PI / 2,
+    d3_svg_arcMax = 2 * Math.PI - 1e-6;
+
+function d3_svg_arcInnerRadius(d) {
+  return d.innerRadius;
+}
+
+function d3_svg_arcOuterRadius(d) {
+  return d.outerRadius;
+}
+
+function d3_svg_arcStartAngle(d) {
+  return d.startAngle;
+}
+
+function d3_svg_arcEndAngle(d) {
+  return d.endAngle;
+}
+function d3_svg_line(projection) {
+  var x = d3_svg_lineX,
+      y = d3_svg_lineY,
+      interpolate = "linear",
+      interpolator = d3_svg_lineInterpolators[interpolate],
+      tension = .7;
+
+  function line(d) {
+    return d.length < 1 ? null : "M" + interpolator(projection(d3_svg_linePoints(this, d, x, y)), tension);
+  }
+
+  line.x = function(v) {
+    if (!arguments.length) return x;
+    x = v;
+    return line;
+  };
+
+  line.y = function(v) {
+    if (!arguments.length) return y;
+    y = v;
+    return line;
+  };
+
+  line.interpolate = function(v) {
+    if (!arguments.length) return interpolate;
+    interpolator = d3_svg_lineInterpolators[interpolate = v];
+    return line;
+  };
+
+  line.tension = function(v) {
+    if (!arguments.length) return tension;
+    tension = v;
+    return line;
+  };
+
+  return line;
+}
+
+d3.svg.line = function() {
+  return d3_svg_line(Object);
+};
+
+// Converts the specified array of data into an array of points
+// (x-y tuples), by evaluating the specified `x` and `y` functions on each
+// data point. The `this` context of the evaluated functions is the specified
+// "self" object; each function is passed the current datum and index.
+function d3_svg_linePoints(self, d, x, y) {
+  var points = [],
+      i = -1,
+      n = d.length,
+      fx = typeof x === "function",
+      fy = typeof y === "function",
+      value;
+  if (fx && fy) {
+    while (++i < n) points.push([
+      x.call(self, value = d[i], i),
+      y.call(self, value, i)
+    ]);
+  } else if (fx) {
+    while (++i < n) points.push([x.call(self, d[i], i), y]);
+  } else if (fy) {
+    while (++i < n) points.push([x, y.call(self, d[i], i)]);
+  } else {
+    while (++i < n) points.push([x, y]);
+  }
+  return points;
+}
+
+// The default `x` property, which references d[0].
+function d3_svg_lineX(d) {
+  return d[0];
+}
+
+// The default `y` property, which references d[1].
+function d3_svg_lineY(d) {
+  return d[1];
+}
+
+// The various interpolators supported by the `line` class.
+var d3_svg_lineInterpolators = {
+  "linear": d3_svg_lineLinear,
+  "step-before": d3_svg_lineStepBefore,
+  "step-after": d3_svg_lineStepAfter,
+  "basis": d3_svg_lineBasis,
+  "basis-open": d3_svg_lineBasisOpen,
+  "basis-closed": d3_svg_lineBasisClosed,
+  "bundle": d3_svg_lineBundle,
+  "cardinal": d3_svg_lineCardinal,
+  "cardinal-open": d3_svg_lineCardinalOpen,
+  "cardinal-closed": d3_svg_lineCardinalClosed,
+  "monotone": d3_svg_lineMonotone
+};
+
+// Linear interpolation; generates "L" commands.
+function d3_svg_lineLinear(points) {
+  var i = 0,
+      n = points.length,
+      p = points[0],
+      path = [p[0], ",", p[1]];
+  while (++i < n) path.push("L", (p = points[i])[0], ",", p[1]);
+  return path.join("");
+}
+
+// Step interpolation; generates "H" and "V" commands.
+function d3_svg_lineStepBefore(points) {
+  var i = 0,
+      n = points.length,
+      p = points[0],
+      path = [p[0], ",", p[1]];
+  while (++i < n) path.push("V", (p = points[i])[1], "H", p[0]);
+  return path.join("");
+}
+
+// Step interpolation; generates "H" and "V" commands.
+function d3_svg_lineStepAfter(points) {
+  var i = 0,
+      n = points.length,
+      p = points[0],
+      path = [p[0], ",", p[1]];
+  while (++i < n) path.push("H", (p = points[i])[0], "V", p[1]);
+  return path.join("");
+}
+
+// Open cardinal spline interpolation; generates "C" commands.
+function d3_svg_lineCardinalOpen(points, tension) {
+  return points.length < 4
+      ? d3_svg_lineLinear(points)
+      : points[1] + d3_svg_lineHermite(points.slice(1, points.length - 1),
+        d3_svg_lineCardinalTangents(points, tension));
+}
+
+// Closed cardinal spline interpolation; generates "C" commands.
+function d3_svg_lineCardinalClosed(points, tension) {
+  return points.length < 3
+      ? d3_svg_lineLinear(points)
+      : points[0] + d3_svg_lineHermite((points.push(points[0]), points),
+        d3_svg_lineCardinalTangents([points[points.length - 2]]
+        .concat(points, [points[1]]), tension));
+}
+
+// Cardinal spline interpolation; generates "C" commands.
+function d3_svg_lineCardinal(points, tension, closed) {
+  return points.length < 3
+      ? d3_svg_lineLinear(points)
+      : points[0] + d3_svg_lineHermite(points,
+        d3_svg_lineCardinalTangents(points, tension));
+}
+
+// Hermite spline construction; generates "C" commands.
+function d3_svg_lineHermite(points, tangents) {
+  if (tangents.length < 1
+      || (points.length != tangents.length
+      && points.length != tangents.length + 2)) {
+    return d3_svg_lineLinear(points);
+  }
+
+  var quad = points.length != tangents.length,
+      path = "",
+      p0 = points[0],
+      p = points[1],
+      t0 = tangents[0],
+      t = t0,
+      pi = 1;
+
+  if (quad) {
+    path += "Q" + (p[0] - t0[0] * 2 / 3) + "," + (p[1] - t0[1] * 2 / 3)
+        + "," + p[0] + "," + p[1];
+    p0 = points[1];
+    pi = 2;
+  }
+
+  if (tangents.length > 1) {
+    t = tangents[1];
+    p = points[pi];
+    pi++;
+    path += "C" + (p0[0] + t0[0]) + "," + (p0[1] + t0[1])
+        + "," + (p[0] - t[0]) + "," + (p[1] - t[1])
+        + "," + p[0] + "," + p[1];
+    for (var i = 2; i < tangents.length; i++, pi++) {
+      p = points[pi];
+      t = tangents[i];
+      path += "S" + (p[0] - t[0]) + "," + (p[1] - t[1])
+          + "," + p[0] + "," + p[1];
+    }
+  }
+
+  if (quad) {
+    var lp = points[pi];
+    path += "Q" + (p[0] + t[0] * 2 / 3) + "," + (p[1] + t[1] * 2 / 3)
+        + "," + lp[0] + "," + lp[1];
+  }
+
+  return path;
+}
+
+// Generates tangents for a cardinal spline.
+function d3_svg_lineCardinalTangents(points, tension) {
+  var tangents = [],
+      a = (1 - tension) / 2,
+      p0,
+      p1 = points[0],
+      p2 = points[1],
+      i = 1,
+      n = points.length;
+  while (++i < n) {
+    p0 = p1;
+    p1 = p2;
+    p2 = points[i];
+    tangents.push([a * (p2[0] - p0[0]), a * (p2[1] - p0[1])]);
+  }
+  return tangents;
+}
+
+// B-spline interpolation; generates "C" commands.
+function d3_svg_lineBasis(points) {
+  if (points.length < 3) return d3_svg_lineLinear(points);
+  var i = 1,
+      n = points.length,
+      pi = points[0],
+      x0 = pi[0],
+      y0 = pi[1],
+      px = [x0, x0, x0, (pi = points[1])[0]],
+      py = [y0, y0, y0, pi[1]],
+      path = [x0, ",", y0];
+  d3_svg_lineBasisBezier(path, px, py);
+  while (++i < n) {
+    pi = points[i];
+    px.shift(); px.push(pi[0]);
+    py.shift(); py.push(pi[1]);
+    d3_svg_lineBasisBezier(path, px, py);
+  }
+  i = -1;
+  while (++i < 2) {
+    px.shift(); px.push(pi[0]);
+    py.shift(); py.push(pi[1]);
+    d3_svg_lineBasisBezier(path, px, py);
+  }
+  return path.join("");
+}
+
+// Open B-spline interpolation; generates "C" commands.
+function d3_svg_lineBasisOpen(points) {
+  if (points.length < 4) return d3_svg_lineLinear(points);
+  var path = [],
+      i = -1,
+      n = points.length,
+      pi,
+      px = [0],
+      py = [0];
+  while (++i < 3) {
+    pi = points[i];
+    px.push(pi[0]);
+    py.push(pi[1]);
+  }
+  path.push(d3_svg_lineDot4(d3_svg_lineBasisBezier3, px)
+    + "," + d3_svg_lineDot4(d3_svg_lineBasisBezier3, py));
+  --i; while (++i < n) {
+    pi = points[i];
+    px.shift(); px.push(pi[0]);
+    py.shift(); py.push(pi[1]);
+    d3_svg_lineBasisBezier(path, px, py);
+  }
+  return path.join("");
+}
+
+// Closed B-spline interpolation; generates "C" commands.
+function d3_svg_lineBasisClosed(points) {
+  var path,
+      i = -1,
+      n = points.length,
+      m = n + 4,
+      pi,
+      px = [],
+      py = [];
+  while (++i < 4) {
+    pi = points[i % n];
+    px.push(pi[0]);
+    py.push(pi[1]);
+  }
+  path = [
+    d3_svg_lineDot4(d3_svg_lineBasisBezier3, px), ",",
+    d3_svg_lineDot4(d3_svg_lineBasisBezier3, py)
+  ];
+  --i; while (++i < m) {
+    pi = points[i % n];
+    px.shift(); px.push(pi[0]);
+    py.shift(); py.push(pi[1]);
+    d3_svg_lineBasisBezier(path, px, py);
+  }
+  return path.join("");
+}
+
+function d3_svg_lineBundle(points, tension) {
+  var n = points.length - 1,
+      x0 = points[0][0],
+      y0 = points[0][1],
+      dx = points[n][0] - x0,
+      dy = points[n][1] - y0,
+      i = -1,
+      p,
+      t;
+  while (++i <= n) {
+    p = points[i];
+    t = i / n;
+    p[0] = tension * p[0] + (1 - tension) * (x0 + t * dx);
+    p[1] = tension * p[1] + (1 - tension) * (y0 + t * dy);
+  }
+  return d3_svg_lineBasis(points);
+}
+
+// Returns the dot product of the given four-element vectors.
+function d3_svg_lineDot4(a, b) {
+  return a[0] * b[0] + a[1] * b[1] + a[2] * b[2] + a[3] * b[3];
+}
+
+// Matrix to transform basis (b-spline) control points to bezier
+// control points. Derived from FvD 11.2.8.
+var d3_svg_lineBasisBezier1 = [0, 2/3, 1/3, 0],
+    d3_svg_lineBasisBezier2 = [0, 1/3, 2/3, 0],
+    d3_svg_lineBasisBezier3 = [0, 1/6, 2/3, 1/6];
+
+// Pushes a "C" Bézier curve onto the specified path array, given the
+// two specified four-element arrays which define the control points.
+function d3_svg_lineBasisBezier(path, x, y) {
+  path.push(
+      "C", d3_svg_lineDot4(d3_svg_lineBasisBezier1, x),
+      ",", d3_svg_lineDot4(d3_svg_lineBasisBezier1, y),
+      ",", d3_svg_lineDot4(d3_svg_lineBasisBezier2, x),
+      ",", d3_svg_lineDot4(d3_svg_lineBasisBezier2, y),
+      ",", d3_svg_lineDot4(d3_svg_lineBasisBezier3, x),
+      ",", d3_svg_lineDot4(d3_svg_lineBasisBezier3, y));
+}
+
+// Computes the slope from points p0 to p1.
+function d3_svg_lineSlope(p0, p1) {
+  return (p1[1] - p0[1]) / (p1[0] - p0[0]);
+}
+
+// Compute three-point differences for the given points.
+// http://en.wikipedia.org/wiki/Cubic_Hermite_spline#Finite_difference
+function d3_svg_lineFiniteDifferences(points) {
+  var i = 0,
+      j = points.length - 1,
+      m = [],
+      p0 = points[0],
+      p1 = points[1],
+      d = m[0] = d3_svg_lineSlope(p0, p1);
+  while (++i < j) {
+    m[i] = d + (d = d3_svg_lineSlope(p0 = p1, p1 = points[i + 1]));
+  }
+  m[i] = d;
+  return m;
+}
+
+// Interpolates the given points using Fritsch-Carlson Monotone cubic Hermite
+// interpolation. Returns an array of tangent vectors. For details, see
+// http://en.wikipedia.org/wiki/Monotone_cubic_interpolation
+function d3_svg_lineMonotoneTangents(points) {
+  var tangents = [],
+      d,
+      a,
+      b,
+      s,
+      m = d3_svg_lineFiniteDifferences(points),
+      i = -1,
+      j = points.length - 1;
+
+  // The first two steps are done by computing finite-differences:
+  // 1. Compute the slopes of the secant lines between successive points.
+  // 2. Initialize the tangents at every point as the average of the secants.
+
+  // Then, for each segment…
+  while (++i < j) {
+    d = d3_svg_lineSlope(points[i], points[i + 1]);
+
+    // 3. If two successive yk = y{k + 1} are equal (i.e., d is zero), then set
+    // mk = m{k + 1} = 0 as the spline connecting these points must be flat to
+    // preserve monotonicity. Ignore step 4 and 5 for those k.
+
+    if (Math.abs(d) < 1e-6) {
+      m[i] = m[i + 1] = 0;
+    } else {
+      // 4. Let ak = mk / dk and bk = m{k + 1} / dk.
+      a = m[i] / d;
+      b = m[i + 1] / d;
+
+      // 5. Prevent overshoot and ensure monotonicity by restricting the
+      // magnitude of vector <ak, bk> to a circle of radius 3.
+      s = a * a + b * b;
+      if (s > 9) {
+        s = d * 3 / Math.sqrt(s);
+        m[i] = s * a;
+        m[i + 1] = s * b;
+      }
+    }
+  }
+
+  // Compute the normalized tangent vector from the slopes. Note that if x is
+  // not monotonic, it's possible that the slope will be infinite, so we protect
+  // against NaN by setting the coordinate to zero.
+  i = -1; while (++i <= j) {
+    s = (points[Math.min(j, i + 1)][0] - points[Math.max(0, i - 1)][0])
+      / (6 * (1 + m[i] * m[i]));
+    tangents.push([s || 0, m[i] * s || 0]);
+  }
+
+  return tangents;
+}
+
+function d3_svg_lineMonotone(points) {
+  return points.length < 3
+      ? d3_svg_lineLinear(points)
+      : points[0] +
+        d3_svg_lineHermite(points, d3_svg_lineMonotoneTangents(points));
+}
+d3.svg.line.radial = function() {
+  var line = d3_svg_line(d3_svg_lineRadial);
+  line.radius = line.x, delete line.x;
+  line.angle = line.y, delete line.y;
+  return line;
+};
+
+function d3_svg_lineRadial(points) {
+  var point,
+      i = -1,
+      n = points.length,
+      r,
+      a;
+  while (++i < n) {
+    point = points[i];
+    r = point[0];
+    a = point[1] + d3_svg_arcOffset;
+    point[0] = r * Math.cos(a);
+    point[1] = r * Math.sin(a);
+  }
+  return points;
+}
+function d3_svg_area(projection) {
+  var x0 = d3_svg_lineX,
+      x1 = d3_svg_lineX,
+      y0 = 0,
+      y1 = d3_svg_lineY,
+      interpolate,
+      i0,
+      i1,
+      tension = .7;
+
+  function area(d) {
+    if (d.length < 1) return null;
+    var points0 = d3_svg_linePoints(this, d, x0, y0),
+        points1 = d3_svg_linePoints(this, d, x0 === x1 ? d3_svg_areaX(points0) : x1, y0 === y1 ? d3_svg_areaY(points0) : y1);
+    return "M" + i0(projection(points1), tension)
+         + "L" + i1(projection(points0.reverse()), tension)
+         + "Z";
+  }
+
+  area.x = function(x) {
+    if (!arguments.length) return x1;
+    x0 = x1 = x;
+    return area;
+  };
+
+  area.x0 = function(x) {
+    if (!arguments.length) return x0;
+    x0 = x;
+    return area;
+  };
+
+  area.x1 = function(x) {
+    if (!arguments.length) return x1;
+    x1 = x;
+    return area;
+  };
+
+  area.y = function(y) {
+    if (!arguments.length) return y1;
+    y0 = y1 = y;
+    return area;
+  };
+
+  area.y0 = function(y) {
+    if (!arguments.length) return y0;
+    y0 = y;
+    return area;
+  };
+
+  area.y1 = function(y) {
+    if (!arguments.length) return y1;
+    y1 = y;
+    return area;
+  };
+
+  area.interpolate = function(x) {
+    if (!arguments.length) return interpolate;
+    i0 = d3_svg_lineInterpolators[interpolate = x];
+    i1 = i0.reverse || i0;
+    return area;
+  };
+
+  area.tension = function(x) {
+    if (!arguments.length) return tension;
+    tension = x;
+    return area;
+  };
+
+  return area.interpolate("linear");
+}
+
+d3_svg_lineStepBefore.reverse = d3_svg_lineStepAfter;
+d3_svg_lineStepAfter.reverse = d3_svg_lineStepBefore;
+
+d3.svg.area = function() {
+  return d3_svg_area(Object);
+};
+
+function d3_svg_areaX(points) {
+  return function(d, i) {
+    return points[i][0];
+  };
+}
+
+function d3_svg_areaY(points) {
+  return function(d, i) {
+    return points[i][1];
+  };
+}
+d3.svg.area.radial = function() {
+  var area = d3_svg_area(d3_svg_lineRadial);
+  area.radius = area.x, delete area.x;
+  area.innerRadius = area.x0, delete area.x0;
+  area.outerRadius = area.x1, delete area.x1;
+  area.angle = area.y, delete area.y;
+  area.startAngle = area.y0, delete area.y0;
+  area.endAngle = area.y1, delete area.y1;
+  return area;
+};
+d3.svg.chord = function() {
+  var source = d3_svg_chordSource,
+      target = d3_svg_chordTarget,
+      radius = d3_svg_chordRadius,
+      startAngle = d3_svg_arcStartAngle,
+      endAngle = d3_svg_arcEndAngle;
+
+  // TODO Allow control point to be customized.
+
+  function chord(d, i) {
+    var s = subgroup(this, source, d, i),
+        t = subgroup(this, target, d, i);
+    return "M" + s.p0
+      + arc(s.r, s.p1) + (equals(s, t)
+      ? curve(s.r, s.p1, s.r, s.p0)
+      : curve(s.r, s.p1, t.r, t.p0)
+      + arc(t.r, t.p1)
+      + curve(t.r, t.p1, s.r, s.p0))
+      + "Z";
+  }
+
+  function subgroup(self, f, d, i) {
+    var subgroup = f.call(self, d, i),
+        r = radius.call(self, subgroup, i),
+        a0 = startAngle.call(self, subgroup, i) + d3_svg_arcOffset,
+        a1 = endAngle.call(self, subgroup, i) + d3_svg_arcOffset;
+    return {
+      r: r,
+      a0: a0,
+      a1: a1,
+      p0: [r * Math.cos(a0), r * Math.sin(a0)],
+      p1: [r * Math.cos(a1), r * Math.sin(a1)]
+    };
+  }
+
+  function equals(a, b) {
+    return a.a0 == b.a0 && a.a1 == b.a1;
+  }
+
+  function arc(r, p) {
+    return "A" + r + "," + r + " 0 0,1 " + p;
+  }
+
+  function curve(r0, p0, r1, p1) {
+    return "Q 0,0 " + p1;
+  }
+
+  chord.radius = function(v) {
+    if (!arguments.length) return radius;
+    radius = d3.functor(v);
+    return chord;
+  };
+
+  chord.source = function(v) {
+    if (!arguments.length) return source;
+    source = d3.functor(v);
+    return chord;
+  };
+
+  chord.target = function(v) {
+    if (!arguments.length) return target;
+    target = d3.functor(v);
+    return chord;
+  };
+
+  chord.startAngle = function(v) {
+    if (!arguments.length) return startAngle;
+    startAngle = d3.functor(v);
+    return chord;
+  };
+
+  chord.endAngle = function(v) {
+    if (!arguments.length) return endAngle;
+    endAngle = d3.functor(v);
+    return chord;
+  };
+
+  return chord;
+};
+
+function d3_svg_chordSource(d) {
+  return d.source;
+}
+
+function d3_svg_chordTarget(d) {
+  return d.target;
+}
+
+function d3_svg_chordRadius(d) {
+  return d.radius;
+}
+
+function d3_svg_chordStartAngle(d) {
+  return d.startAngle;
+}
+
+function d3_svg_chordEndAngle(d) {
+  return d.endAngle;
+}
+d3.svg.diagonal = function() {
+  var source = d3_svg_chordSource,
+      target = d3_svg_chordTarget,
+      projection = d3_svg_diagonalProjection;
+
+  function diagonal(d, i) {
+    var p0 = source.call(this, d, i),
+        p3 = target.call(this, d, i),
+        m = (p0.y + p3.y) / 2,
+        p = [p0, {x: p0.x, y: m}, {x: p3.x, y: m}, p3];
+    p = p.map(projection);
+    return "M" + p[0] + "C" + p[1] + " " + p[2] + " " + p[3];
+  }
+
+  diagonal.source = function(x) {
+    if (!arguments.length) return source;
+    source = d3.functor(x);
+    return diagonal;
+  };
+
+  diagonal.target = function(x) {
+    if (!arguments.length) return target;
+    target = d3.functor(x);
+    return diagonal;
+  };
+
+  diagonal.projection = function(x) {
+    if (!arguments.length) return projection;
+    projection = x;
+    return diagonal;
+  };
+
+  return diagonal;
+};
+
+function d3_svg_diagonalProjection(d) {
+  return [d.x, d.y];
+}
+d3.svg.diagonal.radial = function() {
+  var diagonal = d3.svg.diagonal(),
+      projection = d3_svg_diagonalProjection,
+      projection_ = diagonal.projection;
+
+  diagonal.projection = function(x) {
+    return arguments.length
+        ? projection_(d3_svg_diagonalRadialProjection(projection = x))
+        : projection;
+  };
+
+  return diagonal;
+};
+
+function d3_svg_diagonalRadialProjection(projection) {
+  return function() {
+    var d = projection.apply(this, arguments),
+        r = d[0],
+        a = d[1] + d3_svg_arcOffset;
+    return [r * Math.cos(a), r * Math.sin(a)];
+  };
+}
+d3.svg.mouse = function(container) {
+  return d3_svg_mousePoint(container, d3.event);
+};
+
+// https://bugs.webkit.org/show_bug.cgi?id=44083
+var d3_mouse_bug44083 = /WebKit/.test(navigator.userAgent) ? -1 : 0;
+
+function d3_svg_mousePoint(container, e) {
+  var point = (container.ownerSVGElement || container).createSVGPoint();
+  if ((d3_mouse_bug44083 < 0) && (window.scrollX || window.scrollY)) {
+    var svg = d3.select(document.body)
+      .append("svg:svg")
+        .style("position", "absolute")
+        .style("top", 0)
+        .style("left", 0);
+    var ctm = svg[0][0].getScreenCTM();
+    d3_mouse_bug44083 = !(ctm.f || ctm.e);
+    svg.remove();
+  }
+  if (d3_mouse_bug44083) {
+    point.x = e.pageX;
+    point.y = e.pageY;
+  } else {
+    point.x = e.clientX;
+    point.y = e.clientY;
+  }
+  point = point.matrixTransform(container.getScreenCTM().inverse());
+  return [point.x, point.y];
+};
+d3.svg.touches = function(container) {
+  var touches = d3.event.touches;
+  return touches ? d3_array(touches).map(function(touch) {
+    var point = d3_svg_mousePoint(container, touch);
+    point.identifier = touch.identifier;
+    return point;
+  }) : [];
+};
+d3.svg.symbol = function() {
+  var type = d3_svg_symbolType,
+      size = d3_svg_symbolSize;
+
+  function symbol(d, i) {
+    return (d3_svg_symbols[type.call(this, d, i)]
+        || d3_svg_symbols.circle)
+        (size.call(this, d, i));
+  }
+
+  symbol.type = function(x) {
+    if (!arguments.length) return type;
+    type = d3.functor(x);
+    return symbol;
+  };
+
+  // size of symbol in square pixels
+  symbol.size = function(x) {
+    if (!arguments.length) return size;
+    size = d3.functor(x);
+    return symbol;
+  };
+
+  return symbol;
+};
+
+function d3_svg_symbolSize() {
+  return 64;
+}
+
+function d3_svg_symbolType() {
+  return "circle";
+}
+
+// TODO cross-diagonal?
+var d3_svg_symbols = {
+  "circle": function(size) {
+    var r = Math.sqrt(size / Math.PI);
+    return "M0," + r
+        + "A" + r + "," + r + " 0 1,1 0," + (-r)
+        + "A" + r + "," + r + " 0 1,1 0," + r
+        + "Z";
+  },
+  "cross": function(size) {
+    var r = Math.sqrt(size / 5) / 2;
+    return "M" + -3 * r + "," + -r
+        + "H" + -r
+        + "V" + -3 * r
+        + "H" + r
+        + "V" + -r
+        + "H" + 3 * r
+        + "V" + r
+        + "H" + r
+        + "V" + 3 * r
+        + "H" + -r
+        + "V" + r
+        + "H" + -3 * r
+        + "Z";
+  },
+  "diamond": function(size) {
+    var ry = Math.sqrt(size / (2 * d3_svg_symbolTan30)),
+        rx = ry * d3_svg_symbolTan30;
+    return "M0," + -ry
+        + "L" + rx + ",0"
+        + " 0," + ry
+        + " " + -rx + ",0"
+        + "Z";
+  },
+  "square": function(size) {
+    var r = Math.sqrt(size) / 2;
+    return "M" + -r + "," + -r
+        + "L" + r + "," + -r
+        + " " + r + "," + r
+        + " " + -r + "," + r
+        + "Z";
+  },
+  "triangle-down": function(size) {
+    var rx = Math.sqrt(size / d3_svg_symbolSqrt3),
+        ry = rx * d3_svg_symbolSqrt3 / 2;
+    return "M0," + ry
+        + "L" + rx +"," + -ry
+        + " " + -rx + "," + -ry
+        + "Z";
+  },
+  "triangle-up": function(size) {
+    var rx = Math.sqrt(size / d3_svg_symbolSqrt3),
+        ry = rx * d3_svg_symbolSqrt3 / 2;
+    return "M0," + -ry
+        + "L" + rx +"," + ry
+        + " " + -rx + "," + ry
+        + "Z";
+  }
+};
+
+d3.svg.symbolTypes = d3.keys(d3_svg_symbols);
+
+var d3_svg_symbolSqrt3 = Math.sqrt(3),
+    d3_svg_symbolTan30 = Math.tan(30 * Math.PI / 180);
+d3.svg.axis = function() {
+  var scale = d3.scale.linear(),
+      orient = "bottom",
+      tickMajorSize = 6,
+      tickMinorSize = 6,
+      tickEndSize = 6,
+      tickPadding = 3,
+      tickArguments_ = [10],
+      tickFormat_,
+      tickSubdivide = 0;
+
+  function axis(selection) {
+    selection.each(function(d, i, j) {
+      var g = d3.select(this);
+
+      // If selection is a transition, create subtransitions.
+      var transition = selection.delay ? function(o) {
+        var id = d3_transitionInheritId;
+        try {
+          d3_transitionInheritId = selection.id;
+          return o.transition()
+              .delay(selection[j][i].delay)
+              .duration(selection[j][i].duration)
+              .ease(selection.ease());
+        } finally {
+          d3_transitionInheritId = id;
+        }
+      } : Object;
+
+      // Ticks.
+      var ticks = scale.ticks.apply(scale, tickArguments_),
+          tickFormat = tickFormat_ == null ? scale.tickFormat.apply(scale, tickArguments_) : tickFormat_;
+
+      // Minor ticks.
+      var subticks = d3_svg_axisSubdivide(scale, ticks, tickSubdivide),
+          subtick = g.selectAll(".minor").data(subticks, String),
+          subtickEnter = subtick.enter().insert("svg:line", "g").attr("class", "tick minor").style("opacity", 1e-6),
+          subtickExit = transition(subtick.exit()).style("opacity", 1e-6).remove(),
+          subtickUpdate = transition(subtick).style("opacity", 1);
+
+      // Major ticks.
+      var tick = g.selectAll("g").data(ticks, String),
+          tickEnter = tick.enter().insert("svg:g", "path").style("opacity", 1e-6),
+          tickExit = transition(tick.exit()).style("opacity", 1e-6).remove(),
+          tickUpdate = transition(tick).style("opacity", 1),
+          tickTransform;
+
+      // Domain.
+      var range = d3_scaleExtent(scale.range()),
+          path = g.selectAll(".domain").data([0]),
+          pathEnter = path.enter().append("svg:path").attr("class", "domain"),
+          pathUpdate = transition(path);
+
+      // Stash the new scale and grab the old scale.
+      var scale0 = this.__chart__ || scale;
+      this.__chart__ = scale.copy();
+
+      tickEnter.append("svg:line").attr("class", "tick");
+      tickEnter.append("svg:text");
+      tickUpdate.select("text").text(tickFormat);
+
+      switch (orient) {
+        case "bottom": {
+          tickTransform = d3_svg_axisX;
+          subtickUpdate.attr("x2", 0).attr("y2", tickMinorSize);
+          tickUpdate.select("line").attr("x2", 0).attr("y2", tickMajorSize);
+          tickUpdate.select("text").attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding).attr("dy", ".71em").attr("text-anchor", "middle");
+          pathUpdate.attr("d", "M" + range[0] + "," + tickEndSize + "V0H" + range[1] + "V" + tickEndSize);
+          break;
+        }
+        case "top": {
+          tickTransform = d3_svg_axisX;
+          subtickUpdate.attr("x2", 0).attr("y2", -tickMinorSize);
+          tickUpdate.select("line").attr("x2", 0).attr("y2", -tickMajorSize);
+          tickUpdate.select("text").attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("dy", "0em").attr("text-anchor", "middle");
+          pathUpdate.attr("d", "M" + range[0] + "," + -tickEndSize + "V0H" + range[1] + "V" + -tickEndSize);
+          break;
+        }
+        case "left": {
+          tickTransform = d3_svg_axisY;
+          subtickUpdate.attr("x2", -tickMinorSize).attr("y2", 0);
+          tickUpdate.select("line").attr("x2", -tickMajorSize).attr("y2", 0);
+          tickUpdate.select("text").attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0).attr("dy", ".32em").attr("text-anchor", "end");
+          pathUpdate.attr("d", "M" + -tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + -tickEndSize);
+          break;
+        }
+        case "right": {
+          tickTransform = d3_svg_axisY;
+          subtickUpdate.attr("x2", tickMinorSize).attr("y2", 0);
+          tickUpdate.select("line").attr("x2", tickMajorSize).attr("y2", 0);
+          tickUpdate.select("text").attr("x", Math.max(tickMajorSize, 0) + tickPadding).attr("y", 0).attr("dy", ".32em").attr("text-anchor", "start");
+          pathUpdate.attr("d", "M" + tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + tickEndSize);
+          break;
+        }
+      }
+
+      tickEnter.call(tickTransform, scale0);
+      tickUpdate.call(tickTransform, scale);
+      tickExit.call(tickTransform, scale);
+
+      subtickEnter.call(tickTransform, scale0);
+      subtickUpdate.call(tickTransform, scale);
+      subtickExit.call(tickTransform, scale);
+    });
+  }
+
+  axis.scale = function(x) {
+    if (!arguments.length) return scale;
+    scale = x;
+    return axis;
+  };
+
+  axis.orient = function(x) {
+    if (!arguments.length) return orient;
+    orient = x;
+    return axis;
+  };
+
+  axis.ticks = function() {
+    if (!arguments.length) return tickArguments_;
+    tickArguments_ = arguments;
+    return axis;
+  };
+
+  axis.tickFormat = function(x) {
+    if (!arguments.length) return tickFormat_;
+    tickFormat_ = x;
+    return axis;
+  };
+
+  axis.tickSize = function(x, y, z) {
+    if (!arguments.length) return tickMajorSize;
+    var n = arguments.length - 1;
+    tickMajorSize = +x;
+    tickMinorSize = n > 1 ? +y : tickMajorSize;
+    tickEndSize = n > 0 ? +arguments[n] : tickMajorSize;
+    return axis;
+  };
+
+  axis.tickPadding = function(x) {
+    if (!arguments.length) return tickPadding;
+    tickPadding = +x;
+    return axis;
+  };
+
+  axis.tickSubdivide = function(x) {
+    if (!arguments.length) return tickSubdivide;
+    tickSubdivide = +x;
+    return axis;
+  };
+
+  return axis;
+};
+
+function d3_svg_axisX(selection, x) {
+  selection.attr("transform", function(d) { return "translate(" + x(d) + ",0)"; });
+}
+
+function d3_svg_axisY(selection, y) {
+  selection.attr("transform", function(d) { return "translate(0," + y(d) + ")"; });
+}
+
+function d3_svg_axisSubdivide(scale, ticks, m) {
+  subticks = [];
+  if (m && ticks.length > 1) {
+    var extent = d3_scaleExtent(scale.domain()),
+        subticks,
+        i = -1,
+        n = ticks.length,
+        d = (ticks[1] - ticks[0]) / ++m,
+        j,
+        v;
+    while (++i < n) {
+      for (j = m; --j > 0;) {
+        if ((v = +ticks[i] - j * d) >= extent[0]) {
+          subticks.push(v);
+        }
+      }
+    }
+    for (--i, j = 0; ++j < m && (v = +ticks[i] + j * d) < extent[1];) {
+      subticks.push(v);
+    }
+  }
+  return subticks;
+}
+d3.behavior = {};
+d3.behavior.drag = function() {
+  var event = d3.dispatch("drag", "dragstart", "dragend");
+
+  function drag() {
+    this
+        .on("mousedown.drag", mousedown)
+        .on("touchstart.drag", mousedown);
+
+    d3.select(window)
+        .on("mousemove.drag", d3_behavior_dragMove)
+        .on("touchmove.drag", d3_behavior_dragMove)
+        .on("mouseup.drag", d3_behavior_dragUp, true)
+        .on("touchend.drag", d3_behavior_dragUp, true)
+        .on("click.drag", d3_behavior_dragClick, true);
+  }
+
+  // snapshot the local context for subsequent dispatch
+  function start() {
+    d3_behavior_dragEvent = event;
+    d3_behavior_dragEventTarget = d3.event.target;
+    d3_behavior_dragOffset = d3_behavior_dragPoint((d3_behavior_dragTarget = this).parentNode);
+    d3_behavior_dragMoved = 0;
+    d3_behavior_dragArguments = arguments;
+  }
+
+  function mousedown() {
+    start.apply(this, arguments);
+    d3_behavior_dragDispatch("dragstart");
+  }
+
+  drag.on = function(type, listener) {
+    event[type].add(listener);
+    return drag;
+  };
+
+  return drag;
+};
+
+var d3_behavior_dragEvent,
+    d3_behavior_dragEventTarget,
+    d3_behavior_dragTarget,
+    d3_behavior_dragArguments,
+    d3_behavior_dragOffset,
+    d3_behavior_dragMoved,
+    d3_behavior_dragStopClick;
+
+function d3_behavior_dragDispatch(type) {
+  var o = d3.event, p = d3_behavior_dragTarget.parentNode, dx = 0, dy = 0;
+
+  if (p) {
+    p = d3_behavior_dragPoint(p);
+    dx = p[0] - d3_behavior_dragOffset[0];
+    dy = p[1] - d3_behavior_dragOffset[1];
+    d3_behavior_dragOffset = p;
+    d3_behavior_dragMoved |= dx | dy;
+  }
+
+  try {
+    d3.event = {dx: dx, dy: dy};
+    d3_behavior_dragEvent[type].dispatch.apply(d3_behavior_dragTarget, d3_behavior_dragArguments);
+  } finally {
+    d3.event = o;
+  }
+
+  o.preventDefault();
+}
+
+function d3_behavior_dragPoint(container) {
+  return d3.event.touches
+      ? d3.svg.touches(container)[0]
+      : d3.svg.mouse(container);
+}
+
+function d3_behavior_dragMove() {
+  if (!d3_behavior_dragTarget) return;
+  var parent = d3_behavior_dragTarget.parentNode;
+
+  // O NOES! The drag element was removed from the DOM.
+  if (!parent) return d3_behavior_dragUp();
+
+  d3_behavior_dragDispatch("drag");
+  d3_behavior_dragCancel();
+}
+
+function d3_behavior_dragUp() {
+  if (!d3_behavior_dragTarget) return;
+  d3_behavior_dragDispatch("dragend");
+  d3_behavior_dragTarget = null;
+
+  // If the node was moved, prevent the mouseup from propagating.
+  // Also prevent the subsequent click from propagating (e.g., for anchors).
+  if (d3_behavior_dragMoved && d3_behavior_dragEventTarget === d3.event.target) {
+    d3_behavior_dragStopClick = true;
+    d3_behavior_dragCancel();
+  }
+}
+
+function d3_behavior_dragClick() {
+  if (d3_behavior_dragStopClick && d3_behavior_dragEventTarget === d3.event.target) {
+    d3_behavior_dragCancel();
+    d3_behavior_dragStopClick = false;
+    d3_behavior_dragEventTarget = null;
+  }
+}
+
+function d3_behavior_dragCancel() {
+  d3.event.stopPropagation();
+  d3.event.preventDefault();
+}
+// TODO unbind zoom behavior?
+// TODO unbind listener?
+d3.behavior.zoom = function() {
+  var xyz = [0, 0, 0],
+      event = d3.dispatch("zoom");
+
+  function zoom() {
+    this
+        .on("mousedown.zoom", mousedown)
+        .on("mousewheel.zoom", mousewheel)
+        .on("DOMMouseScroll.zoom", mousewheel)
+        .on("dblclick.zoom", dblclick)
+        .on("touchstart.zoom", touchstart);
+
+    d3.select(window)
+        .on("mousemove.zoom", d3_behavior_zoomMousemove)
+        .on("mouseup.zoom", d3_behavior_zoomMouseup)
+        .on("touchmove.zoom", d3_behavior_zoomTouchmove)
+        .on("touchend.zoom", d3_behavior_zoomTouchup)
+        .on("click.zoom", d3_behavior_zoomClick, true);
+  }
+
+  // snapshot the local context for subsequent dispatch
+  function start() {
+    d3_behavior_zoomXyz = xyz;
+    d3_behavior_zoomDispatch = event.zoom.dispatch;
+    d3_behavior_zoomEventTarget = d3.event.target;
+    d3_behavior_zoomTarget = this;
+    d3_behavior_zoomArguments = arguments;
+  }
+
+  function mousedown() {
+    start.apply(this, arguments);
+    d3_behavior_zoomPanning = d3_behavior_zoomLocation(d3.svg.mouse(d3_behavior_zoomTarget));
+    d3_behavior_zoomMoved = false;
+    d3.event.preventDefault();
+    window.focus();
+  }
+
+  // store starting mouse location
+  function mousewheel() {
+    start.apply(this, arguments);
+    if (!d3_behavior_zoomZooming) d3_behavior_zoomZooming = d3_behavior_zoomLocation(d3.svg.mouse(d3_behavior_zoomTarget));
+    d3_behavior_zoomTo(d3_behavior_zoomDelta() + xyz[2], d3.svg.mouse(d3_behavior_zoomTarget), d3_behavior_zoomZooming);
+  }
+
+  function dblclick() {
+    start.apply(this, arguments);
+    var mouse = d3.svg.mouse(d3_behavior_zoomTarget);
+    d3_behavior_zoomTo(d3.event.shiftKey ? Math.ceil(xyz[2] - 1) : Math.floor(xyz[2] + 1), mouse, d3_behavior_zoomLocation(mouse));
+  }
+
+  // doubletap detection
+  function touchstart() {
+    start.apply(this, arguments);
+    var touches = d3_behavior_zoomTouchup(),
+        touch,
+        now = Date.now();
+    if ((touches.length === 1) && (now - d3_behavior_zoomLast < 300)) {
+      d3_behavior_zoomTo(1 + Math.floor(xyz[2]), touch = touches[0], d3_behavior_zoomLocations[touch.identifier]);
+    }
+    d3_behavior_zoomLast = now;
+  }
+
+  zoom.on = function(type, listener) {
+    event[type].add(listener);
+    return zoom;
+  };
+
+  return zoom;
+};
+
+var d3_behavior_zoomDiv,
+    d3_behavior_zoomPanning,
+    d3_behavior_zoomZooming,
+    d3_behavior_zoomLocations = {}, // identifier -> location
+    d3_behavior_zoomLast = 0,
+    d3_behavior_zoomXyz,
+    d3_behavior_zoomDispatch,
+    d3_behavior_zoomEventTarget,
+    d3_behavior_zoomTarget,
+    d3_behavior_zoomArguments,
+    d3_behavior_zoomMoved,
+    d3_behavior_zoomStopClick;
+
+function d3_behavior_zoomLocation(point) {
+  return [
+    point[0] - d3_behavior_zoomXyz[0],
+    point[1] - d3_behavior_zoomXyz[1],
+    d3_behavior_zoomXyz[2]
+  ];
+}
+
+// detect the pixels that would be scrolled by this wheel event
+function d3_behavior_zoomDelta() {
+
+  // mousewheel events are totally broken!
+  // https://bugs.webkit.org/show_bug.cgi?id=40441
+  // not only that, but Chrome and Safari differ in re. to acceleration!
+  if (!d3_behavior_zoomDiv) {
+    d3_behavior_zoomDiv = d3.select("body").append("div")
+        .style("visibility", "hidden")
+        .style("top", 0)
+        .style("height", 0)
+        .style("width", 0)
+        .style("overflow-y", "scroll")
+      .append("div")
+        .style("height", "2000px")
+      .node().parentNode;
+  }
+
+  var e = d3.event, delta;
+  try {
+    d3_behavior_zoomDiv.scrollTop = 1000;
+    d3_behavior_zoomDiv.dispatchEvent(e);
+    delta = 1000 - d3_behavior_zoomDiv.scrollTop;
+  } catch (error) {
+    delta = e.wheelDelta || (-e.detail * 5);
+  }
+
+  return delta * .005;
+}
+
+// Note: Since we don't rotate, it's possible for the touches to become
+// slightly detached from their original positions. Thus, we recompute the
+// touch points on touchend as well as touchstart!
+function d3_behavior_zoomTouchup() {
+  var touches = d3.svg.touches(d3_behavior_zoomTarget),
+      i = -1,
+      n = touches.length,
+      touch;
+  while (++i < n) d3_behavior_zoomLocations[(touch = touches[i]).identifier] = d3_behavior_zoomLocation(touch);
+  return touches;
+}
+
+function d3_behavior_zoomTouchmove() {
+  var touches = d3.svg.touches(d3_behavior_zoomTarget);
+  switch (touches.length) {
+
+    // single-touch pan
+    case 1: {
+      var touch = touches[0];
+      d3_behavior_zoomTo(d3_behavior_zoomXyz[2], touch, d3_behavior_zoomLocations[touch.identifier]);
+      break;
+    }
+
+    // double-touch pan + zoom
+    case 2: {
+      var p0 = touches[0],
+          p1 = touches[1],
+          p2 = [(p0[0] + p1[0]) / 2, (p0[1] + p1[1]) / 2],
+          l0 = d3_behavior_zoomLocations[p0.identifier],
+          l1 = d3_behavior_zoomLocations[p1.identifier],
+          l2 = [(l0[0] + l1[0]) / 2, (l0[1] + l1[1]) / 2, l0[2]];
+      d3_behavior_zoomTo(Math.log(d3.event.scale) / Math.LN2 + l0[2], p2, l2);
+      break;
+    }
+  }
+}
+
+function d3_behavior_zoomMousemove() {
+  d3_behavior_zoomZooming = null;
+  if (d3_behavior_zoomPanning) {
+    d3_behavior_zoomMoved = true;
+    d3_behavior_zoomTo(d3_behavior_zoomXyz[2], d3.svg.mouse(d3_behavior_zoomTarget), d3_behavior_zoomPanning);
+  }
+}
+
+function d3_behavior_zoomMouseup() {
+  if (d3_behavior_zoomPanning) {
+    if (d3_behavior_zoomMoved && d3_behavior_zoomEventTarget === d3.event.target) {
+      d3_behavior_zoomStopClick = true;
+    }
+    d3_behavior_zoomMousemove();
+    d3_behavior_zoomPanning = null;
+  }
+}
+
+function d3_behavior_zoomClick() {
+  if (d3_behavior_zoomStopClick && d3_behavior_zoomEventTarget === d3.event.target) {
+    d3.event.stopPropagation();
+    d3.event.preventDefault();
+    d3_behavior_zoomStopClick = false;
+    d3_behavior_zoomEventTarget = null;
+  }
+}
+
+function d3_behavior_zoomTo(z, x0, x1) {
+  var K = Math.pow(2, (d3_behavior_zoomXyz[2] = z) - x1[2]),
+      x = d3_behavior_zoomXyz[0] = x0[0] - K * x1[0],
+      y = d3_behavior_zoomXyz[1] = x0[1] - K * x1[1],
+      o = d3.event, // Events can be reentrant (e.g., focus).
+      k = Math.pow(2, z);
+
+  d3.event = {
+    scale: k,
+    translate: [x, y],
+    transform: function(sx, sy) {
+      if (sx) transform(sx, x);
+      if (sy) transform(sy, y);
+    }
+  };
+
+  function transform(scale, o) {
+    var domain = scale.__domain || (scale.__domain = scale.domain()),
+        range = scale.range().map(function(v) { return (v - o) / k; });
+    scale.domain(domain).domain(range.map(scale.invert));
+  }
+
+  try {
+    d3_behavior_zoomDispatch.apply(d3_behavior_zoomTarget, d3_behavior_zoomArguments);
+  } finally {
+    d3.event = o;
+  }
+
+  o.preventDefault();
+}
+})();
+(function(){d3.chart = {};
+// Inspired by http://informationandvisualization.de/blog/box-plot
+d3.chart.box = function() {
+  var width = 1,
+      height = 1,
+      duration = 0,
+      domain = null,
+      value = Number,
+      whiskers = d3_chart_boxWhiskers,
+      quartiles = d3_chart_boxQuartiles,
+      tickFormat = null;
+
+  // For each small multiple…
+  function box(g) {
+    g.each(function(d, i) {
+      d = d.map(value).sort(d3.ascending);
+      var g = d3.select(this),
+          n = d.length,
+          min = d[0],
+          max = d[n - 1];
+
+      // Compute quartiles. Must return exactly 3 elements.
+      var quartileData = d.quartiles = quartiles(d);
+
+      // Compute whiskers. Must return exactly 2 elements, or null.
+      var whiskerIndices = whiskers && whiskers.call(this, d, i),
+          whiskerData = whiskerIndices && whiskerIndices.map(function(i) { return d[i]; });
+
+      // Compute outliers. If no whiskers are specified, all data are "outliers".
+      // We compute the outliers as indices, so that we can join across transitions!
+      var outlierIndices = whiskerIndices
+          ? d3.range(0, whiskerIndices[0]).concat(d3.range(whiskerIndices[1] + 1, n))
+          : d3.range(n);
+
+      // Compute the new x-scale.
+      var x1 = d3.scale.linear()
+          .domain(domain && domain.call(this, d, i) || [min, max])
+          .range([height, 0]);
+
+      // Retrieve the old x-scale, if this is an update.
+      var x0 = this.__chart__ || d3.scale.linear()
+          .domain([0, Infinity])
+          .range(x1.range());
+
+      // Stash the new scale.
+      this.__chart__ = x1;
+
+      // Note: the box, median, and box tick elements are fixed in number,
+      // so we only have to handle enter and update. In contrast, the outliers
+      // and other elements are variable, so we need to exit them! Variable
+      // elements also fade in and out.
+
+      // Update center line: the vertical line spanning the whiskers.
+      var center = g.selectAll("line.center")
+          .data(whiskerData ? [whiskerData] : []);
+
+      center.enter().insert("svg:line", "rect")
+          .attr("class", "center")
+          .attr("x1", width / 2)
+          .attr("y1", function(d) { return x0(d[0]); })
+          .attr("x2", width / 2)
+          .attr("y2", function(d) { return x0(d[1]); })
+          .style("opacity", 1e-6)
+        .transition()
+          .duration(duration)
+          .style("opacity", 1)
+          .attr("y1", function(d) { return x1(d[0]); })
+          .attr("y2", function(d) { return x1(d[1]); });
+
+      center.transition()
+          .duration(duration)
+          .style("opacity", 1)
+          .attr("y1", function(d) { return x1(d[0]); })
+          .attr("y2", function(d) { return x1(d[1]); });
+
+      center.exit().transition()
+          .duration(duration)
+          .style("opacity", 1e-6)
+          .attr("y1", function(d) { return x1(d[0]); })
+          .attr("y2", function(d) { return x1(d[1]); })
+          .remove();
+
+      // Update innerquartile box.
+      var box = g.selectAll("rect.box")
+          .data([quartileData]);
+
+      box.enter().append("svg:rect")
+          .attr("class", "box")
+          .attr("x", 0)
+          .attr("y", function(d) { return x0(d[2]); })
+          .attr("width", width)
+          .attr("height", function(d) { return x0(d[0]) - x0(d[2]); })
+        .transition()
+          .duration(duration)
+          .attr("y", function(d) { return x1(d[2]); })
+          .attr("height", function(d) { return x1(d[0]) - x1(d[2]); });
+
+      box.transition()
+          .duration(duration)
+          .attr("y", function(d) { return x1(d[2]); })
+          .attr("height", function(d) { return x1(d[0]) - x1(d[2]); });
+
+      // Update median line.
+      var medianLine = g.selectAll("line.median")
+          .data([quartileData[1]]);
+
+      medianLine.enter().append("svg:line")
+          .attr("class", "median")
+          .attr("x1", 0)
+          .attr("y1", x0)
+          .attr("x2", width)
+          .attr("y2", x0)
+        .transition()
+          .duration(duration)
+          .attr("y1", x1)
+          .attr("y2", x1);
+
+      medianLine.transition()
+          .duration(duration)
+          .attr("y1", x1)
+          .attr("y2", x1);
+
+      // Update whiskers.
+      var whisker = g.selectAll("line.whisker")
+          .data(whiskerData || []);
+
+      whisker.enter().insert("svg:line", "circle, text")
+          .attr("class", "whisker")
+          .attr("x1", 0)
+          .attr("y1", x0)
+          .attr("x2", width)
+          .attr("y2", x0)
+          .style("opacity", 1e-6)
+        .transition()
+          .duration(duration)
+          .attr("y1", x1)
+          .attr("y2", x1)
+          .style("opacity", 1);
+
+      whisker.transition()
+          .duration(duration)
+          .attr("y1", x1)
+          .attr("y2", x1)
+          .style("opacity", 1);
+
+      whisker.exit().transition()
+          .duration(duration)
+          .attr("y1", x1)
+          .attr("y2", x1)
+          .style("opacity", 1e-6)
+          .remove();
+
+      // Update outliers.
+      var outlier = g.selectAll("circle.outlier")
+          .data(outlierIndices, Number);
+
+      outlier.enter().insert("svg:circle", "text")
+          .attr("class", "outlier")
+          .attr("r", 5)
+          .attr("cx", width / 2)
+          .attr("cy", function(i) { return x0(d[i]); })
+          .style("opacity", 1e-6)
+        .transition()
+          .duration(duration)
+          .attr("cy", function(i) { return x1(d[i]); })
+          .style("opacity", 1);
+
+      outlier.transition()
+          .duration(duration)
+          .attr("cy", function(i) { return x1(d[i]); })
+          .style("opacity", 1);
+
+      outlier.exit().transition()
+          .duration(duration)
+          .attr("cy", function(i) { return x1(d[i]); })
+          .style("opacity", 1e-6)
+          .remove();
+
+      // Compute the tick format.
+      var format = tickFormat || x1.tickFormat(8);
+
+      // Update box ticks.
+      var boxTick = g.selectAll("text.box")
+          .data(quartileData);
+
+      boxTick.enter().append("svg:text")
+          .attr("class", "box")
+          .attr("dy", ".3em")
+          .attr("dx", function(d, i) { return i & 1 ? 6 : -6 })
+          .attr("x", function(d, i) { return i & 1 ? width : 0 })
+          .attr("y", x0)
+          .attr("text-anchor", function(d, i) { return i & 1 ? "start" : "end"; })
+          .text(format)
+        .transition()
+          .duration(duration)
+          .attr("y", x1);
+
+      boxTick.transition()
+          .duration(duration)
+          .text(format)
+          .attr("y", x1);
+
+      // Update whisker ticks. These are handled separately from the box
+      // ticks because they may or may not exist, and we want don't want
+      // to join box ticks pre-transition with whisker ticks post-.
+      var whiskerTick = g.selectAll("text.whisker")
+          .data(whiskerData || []);
+
+      whiskerTick.enter().append("svg:text")
+          .attr("class", "whisker")
+          .attr("dy", ".3em")
+          .attr("dx", 6)
+          .attr("x", width)
+          .attr("y", x0)
+          .text(format)
+          .style("opacity", 1e-6)
+        .transition()
+          .duration(duration)
+          .attr("y", x1)
+          .style("opacity", 1);
+
+      whiskerTick.transition()
+          .duration(duration)
+          .text(format)
+          .attr("y", x1)
+          .style("opacity", 1);
+
+      whiskerTick.exit().transition()
+          .duration(duration)
+          .attr("y", x1)
+          .style("opacity", 1e-6)
+          .remove();
+    });
+    d3.timer.flush();
+  }
+
+  box.width = function(x) {
+    if (!arguments.length) return width;
+    width = x;
+    return box;
+  };
+
+  box.height = function(x) {
+    if (!arguments.length) return height;
+    height = x;
+    return box;
+  };
+
+  box.tickFormat = function(x) {
+    if (!arguments.length) return tickFormat;
+    tickFormat = x;
+    return box;
+  };
+
+  box.duration = function(x) {
+    if (!arguments.length) return duration;
+    duration = x;
+    return box;
+  };
+
+  box.domain = function(x) {
+    if (!arguments.length) return domain;
+    domain = x == null ? x : d3.functor(x);
+    return box;
+  };
+
+  box.value = function(x) {
+    if (!arguments.length) return value;
+    value = x;
+    return box;
+  };
+
+  box.whiskers = function(x) {
+    if (!arguments.length) return whiskers;
+    whiskers = x;
+    return box;
+  };
+
+  box.quartiles = function(x) {
+    if (!arguments.length) return quartiles;
+    quartiles = x;
+    return box;
+  };
+
+  return box;
+};
+
+function d3_chart_boxWhiskers(d) {
+  return [0, d.length - 1];
+}
+
+function d3_chart_boxQuartiles(d) {
+  return [
+    d3.quantile(d, .25),
+    d3.quantile(d, .5),
+    d3.quantile(d, .75)
+  ];
+}
+// Chart design based on the recommendations of Stephen Few. Implementation
+// based on the work of Clint Ivy, Jamie Love, and Jason Davies.
+// http://projects.instantcognition.com/protovis/bulletchart/
+d3.chart.bullet = function() {
+  var orient = "left", // TODO top & bottom
+      reverse = false,
+      duration = 0,
+      ranges = d3_chart_bulletRanges,
+      markers = d3_chart_bulletMarkers,
+      measures = d3_chart_bulletMeasures,
+      width = 380,
+      height = 30,
+      tickFormat = null;
+
+  // For each small multiple…
+  function bullet(g) {
+    g.each(function(d, i) {
+      var rangez = ranges.call(this, d, i).slice().sort(d3.descending),
+          markerz = markers.call(this, d, i).slice().sort(d3.descending),
+          measurez = measures.call(this, d, i).slice().sort(d3.descending),
+          g = d3.select(this);
+
+      // Compute the new x-scale.
+      var x1 = d3.scale.linear()
+          .domain([0, Math.max(rangez[0], markerz[0], measurez[0])])
+          .range(reverse ? [width, 0] : [0, width]);
+
+      // Retrieve the old x-scale, if this is an update.
+      var x0 = this.__chart__ || d3.scale.linear()
+          .domain([0, Infinity])
+          .range(x1.range());
+
+      // Stash the new scale.
+      this.__chart__ = x1;
+
+      // Derive width-scales from the x-scales.
+      var w0 = d3_chart_bulletWidth(x0),
+          w1 = d3_chart_bulletWidth(x1);
+
+      // Update the range rects.
+      var range = g.selectAll("rect.range")
+          .data(rangez);
+
+      range.enter().append("svg:rect")
+          .attr("class", function(d, i) { return "range s" + i; })
+          .attr("width", w0)
+          .attr("height", height)
+          .attr("x", reverse ? x0 : 0)
+        .transition()
+          .duration(duration)
+          .attr("width", w1)
+          .attr("x", reverse ? x1 : 0);
+
+      range.transition()
+          .duration(duration)
+          .attr("x", reverse ? x1 : 0)
+          .attr("width", w1)
+          .attr("height", height);
+
+      // Update the measure rects.
+      var measure = g.selectAll("rect.measure")
+          .data(measurez);
+
+      measure.enter().append("svg:rect")
+          .attr("class", function(d, i) { return "measure s" + i; })
+          .attr("width", w0)
+          .attr("height", height / 3)
+          .attr("x", reverse ? x0 : 0)
+          .attr("y", height / 3)
+        .transition()
+          .duration(duration)
+          .attr("width", w1)
+          .attr("x", reverse ? x1 : 0);
+
+      measure.transition()
+          .duration(duration)
+          .attr("width", w1)
+          .attr("height", height / 3)
+          .attr("x", reverse ? x1 : 0)
+          .attr("y", height / 3);
+
+      // Update the marker lines.
+      var marker = g.selectAll("line.marker")
+          .data(markerz);
+
+      marker.enter().append("svg:line")
+          .attr("class", "marker")
+          .attr("x1", x0)
+          .attr("x2", x0)
+          .attr("y1", height / 6)
+          .attr("y2", height * 5 / 6)
+        .transition()
+          .duration(duration)
+          .attr("x1", x1)
+          .attr("x2", x1);
+
+      marker.transition()
+          .duration(duration)
+          .attr("x1", x1)
+          .attr("x2", x1)
+          .attr("y1", height / 6)
+          .attr("y2", height * 5 / 6);
+
+      // Compute the tick format.
+      var format = tickFormat || x1.tickFormat(8);
+
+      // Update the tick groups.
+      var tick = g.selectAll("g.tick")
+          .data(x1.ticks(8), function(d) {
+            return this.textContent || format(d);
+          });
+
+      // Initialize the ticks with the old scale, x0.
+      var tickEnter = tick.enter().append("svg:g")
+          .attr("class", "tick")
+          .attr("transform", d3_chart_bulletTranslate(x0))
+          .style("opacity", 1e-6);
+
+      tickEnter.append("svg:line")
+          .attr("y1", height)
+          .attr("y2", height * 7 / 6);
+
+      tickEnter.append("svg:text")
+          .attr("text-anchor", "middle")
+          .attr("dy", "1em")
+          .attr("y", height * 7 / 6)
+          .text(format);
+
+      // Transition the entering ticks to the new scale, x1.
+      tickEnter.transition()
+          .duration(duration)
+          .attr("transform", d3_chart_bulletTranslate(x1))
+          .style("opacity", 1);
+
+      // Transition the updating ticks to the new scale, x1.
+      var tickUpdate = tick.transition()
+          .duration(duration)
+          .attr("transform", d3_chart_bulletTranslate(x1))
+          .style("opacity", 1);
+
+      tickUpdate.select("line")
+          .attr("y1", height)
+          .attr("y2", height * 7 / 6);
+
+      tickUpdate.select("text")
+          .attr("y", height * 7 / 6);
+
+      // Transition the exiting ticks to the new scale, x1.
+      tick.exit().transition()
+          .duration(duration)
+          .attr("transform", d3_chart_bulletTranslate(x1))
+          .style("opacity", 1e-6)
+          .remove();
+    });
+    d3.timer.flush();
+  }
+
+  // left, right, top, bottom
+  bullet.orient = function(x) {
+    if (!arguments.length) return orient;
+    orient = x;
+    reverse = orient == "right" || orient == "bottom";
+    return bullet;
+  };
+
+  // ranges (bad, satisfactory, good)
+  bullet.ranges = function(x) {
+    if (!arguments.length) return ranges;
+    ranges = x;
+    return bullet;
+  };
+
+  // markers (previous, goal)
+  bullet.markers = function(x) {
+    if (!arguments.length) return markers;
+    markers = x;
+    return bullet;
+  };
+
+  // measures (actual, forecast)
+  bullet.measures = function(x) {
+    if (!arguments.length) return measures;
+    measures = x;
+    return bullet;
+  };
+
+  bullet.width = function(x) {
+    if (!arguments.length) return width;
+    width = x;
+    return bullet;
+  };
+
+  bullet.height = function(x) {
+    if (!arguments.length) return height;
+    height = x;
+    return bullet;
+  };
+
+  bullet.tickFormat = function(x) {
+    if (!arguments.length) return tickFormat;
+    tickFormat = x;
+    return bullet;
+  };
+
+  bullet.duration = function(x) {
+    if (!arguments.length) return duration;
+    duration = x;
+    return bullet;
+  };
+
+  return bullet;
+};
+
+function d3_chart_bulletRanges(d) {
+  return d.ranges;
+}
+
+function d3_chart_bulletMarkers(d) {
+  return d.markers;
+}
+
+function d3_chart_bulletMeasures(d) {
+  return d.measures;
+}
+
+function d3_chart_bulletTranslate(x) {
+  return function(d) {
+    return "translate(" + x(d) + ",0)";
+  };
+}
+
+function d3_chart_bulletWidth(x) {
+  var x0 = x(0);
+  return function(d) {
+    return Math.abs(x(d) - x0);
+  };
+}
+// Implements a horizon layout, which is a variation of a single-series
+// area chart where the area is folded into multiple bands. Color is used to
+// encode band, allowing the size of the chart to be reduced significantly
+// without impeding readability. This layout algorithm is based on the work of
+// J. Heer, N. Kong and M. Agrawala in "Sizing the Horizon: The Effects of Chart
+// Size and Layering on the Graphical Perception of Time Series Visualizations",
+// CHI 2009. http://hci.stanford.edu/publications/2009/heer-horizon-chi09.pdf
+d3.chart.horizon = function() {
+  var bands = 1, // between 1 and 5, typically
+      mode = "offset", // or mirror
+      interpolate = "linear", // or basis, monotone, step-before, etc.
+      x = d3_chart_horizonX,
+      y = d3_chart_horizonY,
+      w = 960,
+      h = 40,
+      duration = 0;
+
+  var color = d3.scale.linear()
+      .domain([-1, 0, 1])
+      .range(["#d62728", "#fff", "#1f77b4"]);
+
+  // For each small multiple…
+  function horizon(g) {
+    g.each(function(d, i) {
+      var g = d3.select(this),
+          n = 2 * bands + 1,
+          xMin = Infinity,
+          xMax = -Infinity,
+          yMax = -Infinity,
+          x0, // old x-scale
+          y0, // old y-scale
+          id; // unique id for paths
+
+      // Compute x- and y-values along with extents.
+      var data = d.map(function(d, i) {
+        var xv = x.call(this, d, i),
+            yv = y.call(this, d, i);
+        if (xv < xMin) xMin = xv;
+        if (xv > xMax) xMax = xv;
+        if (-yv > yMax) yMax = -yv;
+        if (yv > yMax) yMax = yv;
+        return [xv, yv];
+      });
+
+      // Compute the new x- and y-scales.
+      var x1 = d3.scale.linear().domain([xMin, xMax]).range([0, w]),
+          y1 = d3.scale.linear().domain([0, yMax]).range([0, h * bands]);
+
+      // Retrieve the old scales, if this is an update.
+      if (this.__chart__) {
+        x0 = this.__chart__.x;
+        y0 = this.__chart__.y;
+        id = this.__chart__.id;
+      } else {
+        x0 = d3.scale.linear().domain([0, Infinity]).range(x1.range());
+        y0 = d3.scale.linear().domain([0, Infinity]).range(y1.range());
+        id = ++d3_chart_horizonId;
+      }
+
+      // We'll use a defs to store the area path and the clip path.
+      var defs = g.selectAll("defs")
+          .data([data]);
+
+      var defsEnter = defs.enter().append("svg:defs");
+
+      // The clip path is a simple rect.
+      defsEnter.append("svg:clipPath")
+          .attr("id", "d3_chart_horizon_clip" + id)
+        .append("svg:rect")
+          .attr("width", w)
+          .attr("height", h);
+
+      defs.select("rect").transition()
+          .duration(duration)
+          .attr("width", w)
+          .attr("height", h);
+
+      // The area path is rendered with our resuable d3.svg.area.
+      defsEnter.append("svg:path")
+          .attr("id", "d3_chart_horizon_path" + id)
+          .attr("d", d3_chart_horizonArea
+          .interpolate(interpolate)
+          .x(function(d) { return x0(d[0]); })
+          .y0(h * bands)
+          .y1(function(d) { return h * bands - y0(d[1]); }))
+        .transition()
+          .duration(duration)
+          .attr("d", d3_chart_horizonArea
+          .x(function(d) { return x1(d[0]); })
+          .y1(function(d) { return h * bands - y1(d[1]); }));
+
+      defs.select("path").transition()
+          .duration(duration)
+          .attr("d", d3_chart_horizonArea);
+
+      // We'll use a container to clip all horizon layers at once.
+      g.selectAll("g")
+          .data([null])
+        .enter().append("svg:g")
+          .attr("clip-path", "url(#d3_chart_horizon_clip" + id + ")");
+
+      // Define the transform function based on the mode.
+      var transform = mode == "offset"
+          ? function(d) { return "translate(0," + (d + (d < 0) - bands) * h + ")"; }
+          : function(d) { return (d < 0 ? "scale(1,-1)" : "") + "translate(0," + (d - bands) * h + ")"; };
+
+      // Instantiate each copy of the path with different transforms.
+      var u = g.select("g").selectAll("use")
+          .data(d3.range(-1, -bands - 1, -1).concat(d3.range(1, bands + 1)), Number);
+
+      // TODO don't fudge the enter transition
+      u.enter().append("svg:use")
+          .attr("xlink:href", "#d3_chart_horizon_path" + id)
+          .attr("transform", function(d) { return transform(d + (d > 0 ? 1 : -1)); })
+          .style("fill", color)
+        .transition()
+          .duration(duration)
+          .attr("transform", transform);
+
+      u.transition()
+          .duration(duration)
+          .attr("transform", transform)
+          .style("fill", color);
+
+      u.exit().transition()
+          .duration(duration)
+          .attr("transform", transform)
+          .remove();
+
+      // Stash the new scales.
+      this.__chart__ = {x: x1, y: y1, id: id};
+    });
+    d3.timer.flush();
+  }
+
+  horizon.duration = function(x) {
+    if (!arguments.length) return duration;
+    duration = +x;
+    return horizon;
+  };
+
+  horizon.bands = function(x) {
+    if (!arguments.length) return bands;
+    bands = +x;
+    color.domain([-bands, 0, bands]);
+    return horizon;
+  };
+
+  horizon.mode = function(x) {
+    if (!arguments.length) return mode;
+    mode = x + "";
+    return horizon;
+  };
+
+  horizon.colors = function(x) {
+    if (!arguments.length) return color.range();
+    color.range(x);
+    return horizon;
+  };
+
+  horizon.interpolate = function(x) {
+    if (!arguments.length) return interpolate;
+    interpolate = x + "";
+    return horizon;
+  };
+
+  horizon.x = function(z) {
+    if (!arguments.length) return x;
+    x = z;
+    return horizon;
+  };
+
+  horizon.y = function(z) {
+    if (!arguments.length) return y;
+    y = z;
+    return horizon;
+  };
+
+  horizon.width = function(x) {
+    if (!arguments.length) return w;
+    w = +x;
+    return horizon;
+  };
+
+  horizon.height = function(x) {
+    if (!arguments.length) return h;
+    h = +x;
+    return horizon;
+  };
+
+  return horizon;
+};
+
+var d3_chart_horizonArea = d3.svg.area(),
+    d3_chart_horizonId = 0;
+
+function d3_chart_horizonX(d) {
+  return d[0];
+}
+
+function d3_chart_horizonY(d) {
+  return d[1];
+}
+// Based on http://vis.stanford.edu/protovis/ex/qqplot.html
+d3.chart.qq = function() {
+  var width = 1,
+      height = 1,
+      duration = 0,
+      domain = null,
+      tickFormat = null,
+      n = 100,
+      x = d3_chart_qqX,
+      y = d3_chart_qqY;
+
+  // For each small multiple…
+  function qq(g) {
+    g.each(function(d, i) {
+      var g = d3.select(this),
+          qx = d3_chart_qqQuantiles(n, x.call(this, d, i)),
+          qy = d3_chart_qqQuantiles(n, y.call(this, d, i)),
+          xd = domain && domain.call(this, d, i) || [d3.min(qx), d3.max(qx)], // new x-domain
+          yd = domain && domain.call(this, d, i) || [d3.min(qy), d3.max(qy)], // new y-domain
+          x0, // old x-scale
+          y0; // old y-scale
+
+      // Compute the new x-scale.
+      var x1 = d3.scale.linear()
+          .domain(xd)
+          .range([0, width]);
+
+      // Compute the new y-scale.
+      var y1 = d3.scale.linear()
+          .domain(yd)
+          .range([height, 0]);
+
+      // Retrieve the old scales, if this is an update.
+      if (this.__chart__) {
+        x0 = this.__chart__.x;
+        y0 = this.__chart__.y;
+      } else {
+        x0 = d3.scale.linear().domain([0, Infinity]).range(x1.range());
+        y0 = d3.scale.linear().domain([0, Infinity]).range(y1.range());
+      }
+
+      // Stash the new scales.
+      this.__chart__ = {x: x1, y: y1};
+
+      // Update diagonal line.
+      var diagonal = g.selectAll("line.diagonal")
+          .data([null]);
+
+      diagonal.enter().append("svg:line")
+          .attr("class", "diagonal")
+          .attr("x1", x1(yd[0]))
+          .attr("y1", y1(xd[0]))
+          .attr("x2", x1(yd[1]))
+          .attr("y2", y1(xd[1]));
+
+      diagonal.transition()
+          .duration(duration)
+          .attr("x1", x1(yd[0]))
+          .attr("y1", y1(xd[0]))
+          .attr("x2", x1(yd[1]))
+          .attr("y2", y1(xd[1]));
+
+      // Update quantile plots.
+      var circle = g.selectAll("circle")
+          .data(d3.range(n).map(function(i) {
+            return {x: qx[i], y: qy[i]};
+          }));
+
+      circle.enter().append("svg:circle")
+          .attr("class", "quantile")
+          .attr("r", 4.5)
+          .attr("cx", function(d) { return x0(d.x); })
+          .attr("cy", function(d) { return y0(d.y); })
+          .style("opacity", 1e-6)
+        .transition()
+          .duration(duration)
+          .attr("cx", function(d) { return x1(d.x); })
+          .attr("cy", function(d) { return y1(d.y); })
+          .style("opacity", 1);
+
+      circle.transition()
+          .duration(duration)
+          .attr("cx", function(d) { return x1(d.x); })
+          .attr("cy", function(d) { return y1(d.y); })
+          .style("opacity", 1);
+
+      circle.exit().transition()
+          .duration(duration)
+          .attr("cx", function(d) { return x1(d.x); })
+          .attr("cy", function(d) { return y1(d.y); })
+          .style("opacity", 1e-6)
+          .remove();
+
+      var xformat = tickFormat || x1.tickFormat(4),
+          yformat = tickFormat || y1.tickFormat(4),
+          tx = function(d) { return "translate(" + x1(d) + "," + height + ")"; },
+          ty = function(d) { return "translate(0," + y1(d) + ")"; };
+
+      // Update x-ticks.
+      var xtick = g.selectAll("g.x.tick")
+          .data(x1.ticks(4), function(d) {
+            return this.textContent || xformat(d);
+          });
+
+      var xtickEnter = xtick.enter().append("svg:g")
+          .attr("class", "x tick")
+          .attr("transform", function(d) { return "translate(" + x0(d) + "," + height + ")"; })
+          .style("opacity", 1e-6);
+
+      xtickEnter.append("svg:line")
+          .attr("y1", 0)
+          .attr("y2", -6);
+
+      xtickEnter.append("svg:text")
+          .attr("text-anchor", "middle")
+          .attr("dy", "1em")
+          .text(xformat);
+
+      // Transition the entering ticks to the new scale, x1.
+      xtickEnter.transition()
+          .duration(duration)
+          .attr("transform", tx)
+          .style("opacity", 1);
+
+      // Transition the updating ticks to the new scale, x1.
+      xtick.transition()
+          .duration(duration)
+          .attr("transform", tx)
+          .style("opacity", 1);
+
+      // Transition the exiting ticks to the new scale, x1.
+      xtick.exit().transition()
+          .duration(duration)
+          .attr("transform", tx)
+          .style("opacity", 1e-6)
+          .remove();
+
+      // Update ticks.
+      var ytick = g.selectAll("g.y.tick")
+          .data(y1.ticks(4), function(d) {
+            return this.textContent || yformat(d);
+          });
+
+      var ytickEnter = ytick.enter().append("svg:g")
+          .attr("class", "y tick")
+          .attr("transform", function(d) { return "translate(0," + y0(d) + ")"; })
+          .style("opacity", 1e-6);
+
+      ytickEnter.append("svg:line")
+          .attr("x1", 0)
+          .attr("x2", 6);
+
+      ytickEnter.append("svg:text")
+          .attr("text-anchor", "end")
+          .attr("dx", "-.5em")
+          .attr("dy", ".3em")
+          .text(yformat);
+
+      // Transition the entering ticks to the new scale, y1.
+      ytickEnter.transition()
+          .duration(duration)
+          .attr("transform", ty)
+          .style("opacity", 1);
+
+      // Transition the updating ticks to the new scale, y1.
+      ytick.transition()
+          .duration(duration)
+          .attr("transform", ty)
+          .style("opacity", 1);
+
+      // Transition the exiting ticks to the new scale, y1.
+      ytick.exit().transition()
+          .duration(duration)
+          .attr("transform", ty)
+          .style("opacity", 1e-6)
+          .remove();
+    });
+  }
+
+  qq.width = function(x) {
+    if (!arguments.length) return width;
+    width = x;
+    return qq;
+  };
+
+  qq.height = function(x) {
+    if (!arguments.length) return height;
+    height = x;
+    return qq;
+  };
+
+  qq.duration = function(x) {
+    if (!arguments.length) return duration;
+    duration = x;
+    return qq;
+  };
+
+  qq.domain = function(x) {
+    if (!arguments.length) return domain;
+    domain = x == null ? x : d3.functor(x);
+    return qq;
+  };
+
+  qq.count = function(z) {
+    if (!arguments.length) return n;
+    n = z;
+    return qq;
+  };
+
+  qq.x = function(z) {
+    if (!arguments.length) return x;
+    x = z;
+    return qq;
+  };
+
+  qq.y = function(z) {
+    if (!arguments.length) return y;
+    y = z;
+    return qq;
+  };
+
+  qq.tickFormat = function(x) {
+    if (!arguments.length) return tickFormat;
+    tickFormat = x;
+    return qq;
+  };
+
+  return qq;
+};
+
+function d3_chart_qqQuantiles(n, values) {
+  var m = values.length - 1;
+  values = values.slice().sort(d3.ascending);
+  return d3.range(n).map(function(i) {
+    return values[~~(i * m / n)];
+  });
+}
+
+function d3_chart_qqX(d) {
+  return d.x;
+}
+
+function d3_chart_qqY(d) {
+  return d.y;
+}
+})();
+(function(){d3.layout = {};
+// Implements hierarchical edge bundling using Holten's algorithm. For each
+// input link, a path is computed that travels through the tree, up the parent
+// hierarchy to the least common ancestor, and then back down to the destination
+// node. Each path is simply an array of nodes.
+d3.layout.bundle = function() {
+  return function(links) {
+    var paths = [],
+        i = -1,
+        n = links.length;
+    while (++i < n) paths.push(d3_layout_bundlePath(links[i]));
+    return paths;
+  };
+};
+
+function d3_layout_bundlePath(link) {
+  var start = link.source,
+      end = link.target,
+      lca = d3_layout_bundleLeastCommonAncestor(start, end),
+      points = [start];
+  while (start !== lca) {
+    start = start.parent;
+    points.push(start);
+  }
+  var k = points.length;
+  while (end !== lca) {
+    points.splice(k, 0, end);
+    end = end.parent;
+  }
+  return points;
+}
+
+function d3_layout_bundleAncestors(node) {
+  var ancestors = [],
+      parent = node.parent;
+  while (parent != null) {
+    ancestors.push(node);
+    node = parent;
+    parent = parent.parent;
+  }
+  ancestors.push(node);
+  return ancestors;
+}
+
+function d3_layout_bundleLeastCommonAncestor(a, b) {
+  if (a === b) return a;
+  var aNodes = d3_layout_bundleAncestors(a),
+      bNodes = d3_layout_bundleAncestors(b),
+      aNode = aNodes.pop(),
+      bNode = bNodes.pop(),
+      sharedNode = null;
+  while (aNode === bNode) {
+    sharedNode = aNode;
+    aNode = aNodes.pop();
+    bNode = bNodes.pop();
+  }
+  return sharedNode;
+}
+d3.layout.chord = function() {
+  var chord = {},
+      chords,
+      groups,
+      matrix,
+      n,
+      padding = 0,
+      sortGroups,
+      sortSubgroups,
+      sortChords;
+
+  function relayout() {
+    var subgroups = {},
+        groupSums = [],
+        groupIndex = d3.range(n),
+        subgroupIndex = [],
+        k,
+        x,
+        x0,
+        i,
+        j;
+
+    chords = [];
+    groups = [];
+
+    // Compute the sum.
+    k = 0, i = -1; while (++i < n) {
+      x = 0, j = -1; while (++j < n) {
+        x += matrix[i][j];
+      }
+      groupSums.push(x);
+      subgroupIndex.push(d3.range(n));
+      k += x;
+    }
+
+    // Sort groups…
+    if (sortGroups) {
+      groupIndex.sort(function(a, b) {
+        return sortGroups(groupSums[a], groupSums[b]);
+      });
+    }
+
+    // Sort subgroups…
+    if (sortSubgroups) {
+      subgroupIndex.forEach(function(d, i) {
+        d.sort(function(a, b) {
+          return sortSubgroups(matrix[i][a], matrix[i][b]);
+        });
+      });
+    }
+
+    // Convert the sum to scaling factor for [0, 2pi].
+    // TODO Allow start and end angle to be specified.
+    // TODO Allow padding to be specified as percentage?
+    k = (2 * Math.PI - padding * n) / k;
+
+    // Compute the start and end angle for each group and subgroup.
+    x = 0, i = -1; while (++i < n) {
+      x0 = x, j = -1; while (++j < n) {
+        var di = groupIndex[i],
+            dj = subgroupIndex[di][j],
+            v = matrix[di][dj];
+        subgroups[di + "-" + dj] = {
+          index: di,
+          subindex: dj,
+          startAngle: x,
+          endAngle: x += v * k,
+          value: v
+        };
+      }
+      groups.push({
+        index: di,
+        startAngle: x0,
+        endAngle: x,
+        value: (x - x0) / k
+      });
+      x += padding;
+    }
+
+    // Generate chords for each (non-empty) subgroup-subgroup link.
+    i = -1; while (++i < n) {
+      j = i - 1; while (++j < n) {
+        var source = subgroups[i + "-" + j],
+            target = subgroups[j + "-" + i];
+        if (source.value || target.value) {
+          chords.push(source.value < target.value
+              ? {source: target, target: source}
+              : {source: source, target: target});
+        }
+      }
+    }
+
+    if (sortChords) resort();
+  }
+
+  function resort() {
+    chords.sort(function(a, b) {
+      return sortChords(
+          (a.source.value + a.target.value) / 2,
+          (b.source.value + b.target.value) / 2);
+    });
+  }
+
+  chord.matrix = function(x) {
+    if (!arguments.length) return matrix;
+    n = (matrix = x) && matrix.length;
+    chords = groups = null;
+    return chord;
+  };
+
+  chord.padding = function(x) {
+    if (!arguments.length) return padding;
+    padding = x;
+    chords = groups = null;
+    return chord;
+  };
+
+  chord.sortGroups = function(x) {
+    if (!arguments.length) return sortGroups;
+    sortGroups = x;
+    chords = groups = null;
+    return chord;
+  };
+
+  chord.sortSubgroups = function(x) {
+    if (!arguments.length) return sortSubgroups;
+    sortSubgroups = x;
+    chords = null;
+    return chord;
+  };
+
+  chord.sortChords = function(x) {
+    if (!arguments.length) return sortChords;
+    sortChords = x;
+    if (chords) resort();
+    return chord;
+  };
+
+  chord.chords = function() {
+    if (!chords) relayout();
+    return chords;
+  };
+
+  chord.groups = function() {
+    if (!groups) relayout();
+    return groups;
+  };
+
+  return chord;
+};
+// A rudimentary force layout using Gauss-Seidel.
+d3.layout.force = function() {
+  var force = {},
+      event = d3.dispatch("tick"),
+      size = [1, 1],
+      drag,
+      alpha,
+      friction = .9,
+      linkDistance = d3_layout_forceLinkDistance,
+      linkStrength = d3_layout_forceLinkStrength,
+      charge = -30,
+      gravity = .1,
+      theta = .8,
+      interval,
+      nodes = [],
+      links = [],
+      distances,
+      strengths,
+      charges;
+
+  function repulse(node) {
+    return function(quad, x1, y1, x2, y2) {
+      if (quad.point !== node) {
+        var dx = quad.cx - node.x,
+            dy = quad.cy - node.y,
+            dn = 1 / Math.sqrt(dx * dx + dy * dy);
+
+        /* Barnes-Hut criterion. */
+        if ((x2 - x1) * dn < theta) {
+          var k = quad.charge * dn * dn;
+          node.px -= dx * k;
+          node.py -= dy * k;
+          return true;
+        }
+
+        if (quad.point && isFinite(dn)) {
+          var k = quad.pointCharge * dn * dn;
+          node.px -= dx * k;
+          node.py -= dy * k;
+        }
+      }
+      return !quad.charge;
+    };
+  }
+
+  function tick() {
+    var n = nodes.length,
+        m = links.length,
+        q,
+        i, // current index
+        o, // current object
+        s, // current source
+        t, // current target
+        l, // current distance
+        k, // current force
+        x, // x-distance
+        y; // y-distance
+
+    // gauss-seidel relaxation for links
+    for (i = 0; i < m; ++i) {
+      o = links[i];
+      s = o.source;
+      t = o.target;
+      x = t.x - s.x;
+      y = t.y - s.y;
+      if (l = (x * x + y * y)) {
+        l = alpha * strengths[i] * ((l = Math.sqrt(l)) - distances[i]) / l;
+        x *= l;
+        y *= l;
+        t.x -= x * (k = s.weight / (t.weight + s.weight));
+        t.y -= y * k;
+        s.x += x * (k = 1 - k);
+        s.y += y * k;
+      }
+    }
+
+    // apply gravity forces
+    if (k = alpha * gravity) {
+      x = size[0] / 2;
+      y = size[1] / 2;
+      i = -1; if (k) while (++i < n) {
+        o = nodes[i];
+        o.x += (x - o.x) * k;
+        o.y += (y - o.y) * k;
+      }
+    }
+
+    // compute quadtree center of mass and apply charge forces
+    if (charge) {
+      d3_layout_forceAccumulate(q = d3.geom.quadtree(nodes), alpha, charges);
+      i = -1; while (++i < n) {
+        if (!(o = nodes[i]).fixed) {
+          q.visit(repulse(o));
+        }
+      }
+    }
+
+    // position verlet integration
+    i = -1; while (++i < n) {
+      o = nodes[i];
+      if (o.fixed) {
+        o.x = o.px;
+        o.y = o.py;
+      } else {
+        o.x -= (o.px - (o.px = o.x)) * friction;
+        o.y -= (o.py - (o.py = o.y)) * friction;
+      }
+    }
+
+    event.tick.dispatch({type: "tick", alpha: alpha});
+
+    // simulated annealing, basically
+    return (alpha *= .99) < .005;
+  }
+
+  force.on = function(type, listener) {
+    event[type].add(listener);
+    return force;
+  };
+
+  force.nodes = function(x) {
+    if (!arguments.length) return nodes;
+    nodes = x;
+    return force;
+  };
+
+  force.links = function(x) {
+    if (!arguments.length) return links;
+    links = x;
+    return force;
+  };
+
+  force.size = function(x) {
+    if (!arguments.length) return size;
+    size = x;
+    return force;
+  };
+
+  force.linkDistance = function(x) {
+    if (!arguments.length) return linkDistance;
+    linkDistance = d3.functor(x);
+    return force;
+  };
+
+  // For backwards-compatibility.
+  force.distance = force.linkDistance;
+
+  force.linkStrength = function(x) {
+    if (!arguments.length) return linkStrength;
+    linkStrength = d3.functor(x);
+    return force;
+  };
+
+  force.friction = function(x) {
+    if (!arguments.length) return friction;
+    friction = x;
+    return force;
+  };
+
+  force.charge = function(x) {
+    if (!arguments.length) return charge;
+    charge = typeof x === "function" ? x : +x;
+    return force;
+  };
+
+  force.gravity = function(x) {
+    if (!arguments.length) return gravity;
+    gravity = x;
+    return force;
+  };
+
+  force.theta = function(x) {
+    if (!arguments.length) return theta;
+    theta = x;
+    return force;
+  };
+
+  force.start = function() {
+    var i,
+        j,
+        n = nodes.length,
+        m = links.length,
+        w = size[0],
+        h = size[1],
+        neighbors,
+        o;
+
+    for (i = 0; i < n; ++i) {
+      (o = nodes[i]).index = i;
+      o.weight = 0;
+    }
+
+    distances = [];
+    strengths = [];
+    for (i = 0; i < m; ++i) {
+      o = links[i];
+      if (typeof o.source == "number") o.source = nodes[o.source];
+      if (typeof o.target == "number") o.target = nodes[o.target];
+      distances[i] = linkDistance.call(this, o, i);
+      strengths[i] = linkStrength.call(this, o, i);
+      ++o.source.weight;
+      ++o.target.weight;
+    }
+
+    for (i = 0; i < n; ++i) {
+      o = nodes[i];
+      if (isNaN(o.x)) o.x = position("x", w);
+      if (isNaN(o.y)) o.y = position("y", h);
+      if (isNaN(o.px)) o.px = o.x;
+      if (isNaN(o.py)) o.py = o.y;
+    }
+
+    charges = [];
+    if (typeof charge === "function") {
+      for (i = 0; i < n; ++i) {
+        charges[i] = +charge.call(this, nodes[i], i);
+      }
+    } else {
+      for (i = 0; i < n; ++i) {
+        charges[i] = charge;
+      }
+    }
+
+    // initialize node position based on first neighbor
+    function position(dimension, size) {
+      var neighbors = neighbor(i),
+          j = -1,
+          m = neighbors.length,
+          x;
+      while (++j < m) if (!isNaN(x = neighbors[j][dimension])) return x;
+      return Math.random() * size;
+    }
+
+    // initialize neighbors lazily
+    function neighbor() {
+      if (!neighbors) {
+        neighbors = [];
+        for (j = 0; j < n; ++j) {
+          neighbors[j] = [];
+        }
+        for (j = 0; j < m; ++j) {
+          var o = links[j];
+          neighbors[o.source.index].push(o.target);
+          neighbors[o.target.index].push(o.source);
+        }
+      }
+      return neighbors[i];
+    }
+
+    return force.resume();
+  };
+
+  force.resume = function() {
+    alpha = .1;
+    d3.timer(tick);
+    return force;
+  };
+
+  force.stop = function() {
+    alpha = 0;
+    return force;
+  };
+
+  // use `node.call(force.drag)` to make nodes draggable
+  force.drag = function() {
+    if (!drag) drag = d3.behavior.drag()
+        .on("dragstart", dragstart)
+        .on("drag", d3_layout_forceDrag)
+        .on("dragend", d3_layout_forceDragEnd);
+
+    this.on("mouseover.force", d3_layout_forceDragOver)
+        .on("mouseout.force", d3_layout_forceDragOut)
+        .call(drag);
+  };
+
+  function dragstart(d) {
+    d3_layout_forceDragOver(d3_layout_forceDragNode = d);
+    d3_layout_forceDragForce = force;
+  }
+
+  return force;
+};
+
+var d3_layout_forceDragForce,
+    d3_layout_forceDragNode;
+
+function d3_layout_forceDragOver(d) {
+  d.fixed |= 2;
+}
+
+function d3_layout_forceDragOut(d) {
+  if (d !== d3_layout_forceDragNode) d.fixed &= 1;
+}
+
+function d3_layout_forceDragEnd() {
+  d3_layout_forceDrag();
+  d3_layout_forceDragNode.fixed &= 1;
+  d3_layout_forceDragForce = d3_layout_forceDragNode = null;
+}
+
+function d3_layout_forceDrag() {
+  d3_layout_forceDragNode.px += d3.event.dx;
+  d3_layout_forceDragNode.py += d3.event.dy;
+  d3_layout_forceDragForce.resume(); // restart annealing
+}
+
+function d3_layout_forceAccumulate(quad, alpha, charges) {
+  var cx = 0,
+      cy = 0;
+  quad.charge = 0;
+  if (!quad.leaf) {
+    var nodes = quad.nodes,
+        n = nodes.length,
+        i = -1,
+        c;
+    while (++i < n) {
+      c = nodes[i];
+      if (c == null) continue;
+      d3_layout_forceAccumulate(c, alpha, charges);
+      quad.charge += c.charge;
+      cx += c.charge * c.cx;
+      cy += c.charge * c.cy;
+    }
+  }
+  if (quad.point) {
+    // jitter internal nodes that are coincident
+    if (!quad.leaf) {
+      quad.point.x += Math.random() - .5;
+      quad.point.y += Math.random() - .5;
+    }
+    var k = alpha * charges[quad.point.index];
+    quad.charge += quad.pointCharge = k;
+    cx += k * quad.point.x;
+    cy += k * quad.point.y;
+  }
+  quad.cx = cx / quad.charge;
+  quad.cy = cy / quad.charge;
+}
+
+function d3_layout_forceLinkDistance(link) {
+  return 20;
+}
+
+function d3_layout_forceLinkStrength(link) {
+  return 1;
+}
+d3.layout.partition = function() {
+  var hierarchy = d3.layout.hierarchy(),
+      size = [1, 1]; // width, height
+
+  function position(node, x, dx, dy) {
+    var children = node.children;
+    node.x = x;
+    node.y = node.depth * dy;
+    node.dx = dx;
+    node.dy = dy;
+    if (children && (n = children.length)) {
+      var i = -1,
+          n,
+          c,
+          d;
+      dx = node.value ? dx / node.value : 0;
+      while (++i < n) {
+        position(c = children[i], x, d = c.value * dx, dy);
+        x += d;
+      }
+    }
+  }
+
+  function depth(node) {
+    var children = node.children,
+        d = 0;
+    if (children && (n = children.length)) {
+      var i = -1,
+          n;
+      while (++i < n) d = Math.max(d, depth(children[i]));
+    }
+    return 1 + d;
+  }
+
+  function partition(d, i) {
+    var nodes = hierarchy.call(this, d, i);
+    position(nodes[0], 0, size[0], size[1] / depth(nodes[0]));
+    return nodes;
+  }
+
+  partition.size = function(x) {
+    if (!arguments.length) return size;
+    size = x;
+    return partition;
+  };
+
+  return d3_layout_hierarchyRebind(partition, hierarchy);
+};
+d3.layout.pie = function() {
+  var value = Number,
+      sort = null,
+      startAngle = 0,
+      endAngle = 2 * Math.PI;
+
+  function pie(data, i) {
+
+    // Compute the start angle.
+    var a = +(typeof startAngle === "function"
+        ? startAngle.apply(this, arguments)
+        : startAngle);
+
+    // Compute the angular range (end - start).
+    var k = (typeof endAngle === "function"
+        ? endAngle.apply(this, arguments)
+        : endAngle) - startAngle;
+
+    // Optionally sort the data.
+    var index = d3.range(data.length);
+    if (sort != null) index.sort(function(i, j) {
+      return sort(data[i], data[j]);
+    });
+
+    // Compute the numeric values for each data element.
+    var values = data.map(value);
+
+    // Convert k into a scale factor from value to angle, using the sum.
+    k /= values.reduce(function(p, d) { return p + d; }, 0);
+
+    // Compute the arcs!
+    var arcs = index.map(function(i) {
+      return {
+        data: data[i],
+        value: d = values[i],
+        startAngle: a,
+        endAngle: a += d * k
+      };
+    });
+
+    // Return the arcs in the original data's order.
+    return data.map(function(d, i) {
+      return arcs[index[i]];
+    });
+  }
+
+  /**
+   * Specifies the value function *x*, which returns a nonnegative numeric value
+   * for each datum. The default value function is `Number`. The value function
+   * is passed two arguments: the current datum and the current index.
+   */
+  pie.value = function(x) {
+    if (!arguments.length) return value;
+    value = x;
+    return pie;
+  };
+
+  /**
+   * Specifies a sort comparison operator *x*. The comparator is passed two data
+   * elements from the data array, a and b; it returns a negative value if a is
+   * less than b, a positive value if a is greater than b, and zero if a equals
+   * b.
+   */
+  pie.sort = function(x) {
+    if (!arguments.length) return sort;
+    sort = x;
+    return pie;
+  };
+
+  /**
+   * Specifies the overall start angle of the pie chart. Defaults to 0. The
+   * start angle can be specified either as a constant or as a function; in the
+   * case of a function, it is evaluated once per array (as opposed to per
+   * element).
+   */
+  pie.startAngle = function(x) {
+    if (!arguments.length) return startAngle;
+    startAngle = x;
+    return pie;
+  };
+
+  /**
+   * Specifies the overall end angle of the pie chart. Defaults to 2Ï€. The
+   * end angle can be specified either as a constant or as a function; in the
+   * case of a function, it is evaluated once per array (as opposed to per
+   * element).
+   */
+  pie.endAngle = function(x) {
+    if (!arguments.length) return endAngle;
+    endAngle = x;
+    return pie;
+  };
+
+  return pie;
+};
+// data is two-dimensional array of x,y; we populate y0
+d3.layout.stack = function() {
+  var values = Object,
+      order = d3_layout_stackOrders["default"],
+      offset = d3_layout_stackOffsets["zero"],
+      out = d3_layout_stackOut,
+      x = d3_layout_stackX,
+      y = d3_layout_stackY;
+
+  function stack(data, index) {
+
+    // Convert series to canonical two-dimensional representation.
+    var series = data.map(function(d, i) {
+      return values.call(stack, d, i);
+    });
+
+    // Convert each series to canonical [[x,y]] representation.
+    var points = series.map(function(d, i) {
+      return d.map(function(v, i) {
+        return [x.call(stack, v, i), y.call(stack, v, i)];
+      });
+    });
+
+    // Compute the order of series, and permute them.
+    var orders = order.call(stack, points, index);
+    series = d3.permute(series, orders);
+    points = d3.permute(points, orders);
+
+    // Compute the baseline…
+    var offsets = offset.call(stack, points, index);
+
+    // And propagate it to other series.
+    var n = series.length,
+        m = series[0].length,
+        i,
+        j,
+        o;
+    for (j = 0; j < m; ++j) {
+      out.call(stack, series[0][j], o = offsets[j], points[0][j][1]);
+      for (i = 1; i < n; ++i) {
+        out.call(stack, series[i][j], o += points[i - 1][j][1], points[i][j][1]);
+      }
+    }
+
+    return data;
+  }
+
+  stack.values = function(x) {
+    if (!arguments.length) return values;
+    values = x;
+    return stack;
+  };
+
+  stack.order = function(x) {
+    if (!arguments.length) return order;
+    order = typeof x === "function" ? x : d3_layout_stackOrders[x];
+    return stack;
+  };
+
+  stack.offset = function(x) {
+    if (!arguments.length) return offset;
+    offset = typeof x === "function" ? x : d3_layout_stackOffsets[x];
+    return stack;
+  };
+
+  stack.x = function(z) {
+    if (!arguments.length) return x;
+    x = z;
+    return stack;
+  };
+
+  stack.y = function(z) {
+    if (!arguments.length) return y;
+    y = z;
+    return stack;
+  };
+
+  stack.out = function(z) {
+    if (!arguments.length) return out;
+    out = z;
+    return stack;
+  };
+
+  return stack;
+}
+
+function d3_layout_stackX(d) {
+  return d.x;
+}
+
+function d3_layout_stackY(d) {
+  return d.y;
+}
+
+function d3_layout_stackOut(d, y0, y) {
+  d.y0 = y0;
+  d.y = y;
+}
+
+var d3_layout_stackOrders = {
+
+  "inside-out": function(data) {
+    var n = data.length,
+        i,
+        j,
+        max = data.map(d3_layout_stackMaxIndex),
+        sums = data.map(d3_layout_stackReduceSum),
+        index = d3.range(n).sort(function(a, b) { return max[a] - max[b]; }),
+        top = 0,
+        bottom = 0,
+        tops = [],
+        bottoms = [];
+    for (i = 0; i < n; ++i) {
+      j = index[i];
+      if (top < bottom) {
+        top += sums[j];
+        tops.push(j);
+      } else {
+        bottom += sums[j];
+        bottoms.push(j);
+      }
+    }
+    return bottoms.reverse().concat(tops);
+  },
+
+  "reverse": function(data) {
+    return d3.range(data.length).reverse();
+  },
+
+  "default": function(data) {
+    return d3.range(data.length);
+  }
+
+};
+
+var d3_layout_stackOffsets = {
+
+  "silhouette": function(data) {
+    var n = data.length,
+        m = data[0].length,
+        sums = [],
+        max = 0,
+        i,
+        j,
+        o,
+        y0 = [];
+    for (j = 0; j < m; ++j) {
+      for (i = 0, o = 0; i < n; i++) o += data[i][j][1];
+      if (o > max) max = o;
+      sums.push(o);
+    }
+    for (j = 0; j < m; ++j) {
+      y0[j] = (max - sums[j]) / 2;
+    }
+    return y0;
+  },
+
+  "wiggle": function(data) {
+    var n = data.length,
+        x = data[0],
+        m = x.length,
+        max = 0,
+        i,
+        j,
+        k,
+        s1,
+        s2,
+        s3,
+        dx,
+        o,
+        o0,
+        y0 = [];
+    y0[0] = o = o0 = 0;
+    for (j = 1; j < m; ++j) {
+      for (i = 0, s1 = 0; i < n; ++i) s1 += data[i][j][1];
+      for (i = 0, s2 = 0, dx = x[j][0] - x[j - 1][0]; i < n; ++i) {
+        for (k = 0, s3 = (data[i][j][1] - data[i][j - 1][1]) / (2 * dx); k < i; ++k) {
+          s3 += (data[k][j][1] - data[k][j - 1][1]) / dx;
+        }
+        s2 += s3 * data[i][j][1];
+      }
+      y0[j] = o -= s1 ? s2 / s1 * dx : 0;
+      if (o < o0) o0 = o;
+    }
+    for (j = 0; j < m; ++j) y0[j] -= o0;
+    return y0;
+  },
+
+  "expand": function(data) {
+    var n = data.length,
+        m = data[0].length,
+        k = 1 / n,
+        i,
+        j,
+        o,
+        y0 = [];
+    for (j = 0; j < m; ++j) {
+      for (i = 0, o = 0; i < n; i++) o += data[i][j][1];
+      if (o) for (i = 0; i < n; i++) data[i][j][1] /= o;
+      else for (i = 0; i < n; i++) data[i][j][1] = k;
+    }
+    for (j = 0; j < m; ++j) y0[j] = 0;
+    return y0;
+  },
+
+  "zero": function(data) {
+    var j = -1,
+        m = data[0].length,
+        y0 = [];
+    while (++j < m) y0[j] = 0;
+    return y0;
+  }
+
+};
+
+function d3_layout_stackMaxIndex(array) {
+  var i = 1,
+      j = 0,
+      v = array[0][1],
+      k,
+      n = array.length;
+  for (; i < n; ++i) {
+    if ((k = array[i][1]) > v) {
+      j = i;
+      v = k;
+    }
+  }
+  return j;
+}
+
+function d3_layout_stackReduceSum(d) {
+  return d.reduce(d3_layout_stackSum, 0);
+}
+
+function d3_layout_stackSum(p, d) {
+  return p + d[1];
+}
+d3.layout.histogram = function() {
+  var frequency = true,
+      valuer = Number,
+      ranger = d3_layout_histogramRange,
+      binner = d3_layout_histogramBinSturges;
+
+  function histogram(data, i) {
+    var bins = [],
+        values = data.map(valuer, this),
+        range = ranger.call(this, values, i),
+        thresholds = binner.call(this, range, values, i),
+        bin,
+        i = -1,
+        n = values.length,
+        m = thresholds.length - 1,
+        k = frequency ? 1 : 1 / n,
+        x;
+
+    // Initialize the bins.
+    while (++i < m) {
+      bin = bins[i] = [];
+      bin.dx = thresholds[i + 1] - (bin.x = thresholds[i]);
+      bin.y = 0;
+    }
+
+    // Fill the bins, ignoring values outside the range.
+    i = -1; while(++i < n) {
+      x = values[i];
+      if ((x >= range[0]) && (x <= range[1])) {
+        bin = bins[d3.bisect(thresholds, x, 1, m) - 1];
+        bin.y += k;
+        bin.push(data[i]);
+      }
+    }
+
+    return bins;
+  }
+
+  // Specifies how to extract a value from the associated data. The default
+  // value function is `Number`, which is equivalent to the identity function.
+  histogram.value = function(x) {
+    if (!arguments.length) return valuer;
+    valuer = x;
+    return histogram;
+  };
+
+  // Specifies the range of the histogram. Values outside the specified range
+  // will be ignored. The argument `x` may be specified either as a two-element
+  // array representing the minimum and maximum value of the range, or as a
+  // function that returns the range given the array of values and the current
+  // index `i`. The default range is the extent (minimum and maximum) of the
+  // values.
+  histogram.range = function(x) {
+    if (!arguments.length) return ranger;
+    ranger = d3.functor(x);
+    return histogram;
+  };
+
+  // Specifies how to bin values in the histogram. The argument `x` may be
+  // specified as a number, in which case the range of values will be split
+  // uniformly into the given number of bins. Or, `x` may be an array of
+  // threshold values, defining the bins; the specified array must contain the
+  // rightmost (upper) value, thus specifying n + 1 values for n bins. Or, `x`
+  // may be a function which is evaluated, being passed the range, the array of
+  // values, and the current index `i`, returning an array of thresholds. The
+  // default bin function will divide the values into uniform bins using
+  // Sturges' formula.
+  histogram.bins = function(x) {
+    if (!arguments.length) return binner;
+    binner = typeof x === "number"
+        ? function(range) { return d3_layout_histogramBinFixed(range, x); }
+        : d3.functor(x);
+    return histogram;
+  };
+
+  // Specifies whether the histogram's `y` value is a count (frequency) or a
+  // probability (density). The default value is true.
+  histogram.frequency = function(x) {
+    if (!arguments.length) return frequency;
+    frequency = !!x;
+    return histogram;
+  };
+
+  return histogram;
+};
+
+function d3_layout_histogramBinSturges(range, values) {
+  return d3_layout_histogramBinFixed(range, Math.ceil(Math.log(values.length) / Math.LN2 + 1));
+}
+
+function d3_layout_histogramBinFixed(range, n) {
+  var x = -1,
+      b = +range[0],
+      m = (range[1] - b) / n,
+      f = [];
+  while (++x <= n) f[x] = m * x + b;
+  return f;
+}
+
+function d3_layout_histogramRange(values) {
+  return [d3.min(values), d3.max(values)];
+}
+d3.layout.hierarchy = function() {
+  var sort = d3_layout_hierarchySort,
+      children = d3_layout_hierarchyChildren,
+      value = d3_layout_hierarchyValue;
+
+  // Recursively compute the node depth and value.
+  // Also converts the data representation into a standard hierarchy structure.
+  function recurse(data, depth, nodes) {
+    var childs = children.call(hierarchy, data, depth),
+        node = d3_layout_hierarchyInline ? data : {data: data};
+    node.depth = depth;
+    nodes.push(node);
+    if (childs && (n = childs.length)) {
+      var i = -1,
+          n,
+          c = node.children = [],
+          v = 0,
+          j = depth + 1;
+      while (++i < n) {
+        d = recurse(childs[i], j, nodes);
+        d.parent = node;
+        c.push(d);
+        v += d.value;
+      }
+      if (sort) c.sort(sort);
+      if (value) node.value = v;
+    } else if (value) {
+      node.value = +value.call(hierarchy, data, depth) || 0;
+    }
+    return node;
+  }
+
+  // Recursively re-evaluates the node value.
+  function revalue(node, depth) {
+    var children = node.children,
+        v = 0;
+    if (children && (n = children.length)) {
+      var i = -1,
+          n,
+          j = depth + 1;
+      while (++i < n) v += revalue(children[i], j);
+    } else if (value) {
+      v = +value.call(hierarchy, d3_layout_hierarchyInline ? node : node.data, depth) || 0;
+    }
+    if (value) node.value = v;
+    return v;
+  }
+
+  function hierarchy(d) {
+    var nodes = [];
+    recurse(d, 0, nodes);
+    return nodes;
+  }
+
+  hierarchy.sort = function(x) {
+    if (!arguments.length) return sort;
+    sort = x;
+    return hierarchy;
+  };
+
+  hierarchy.children = function(x) {
+    if (!arguments.length) return children;
+    children = x;
+    return hierarchy;
+  };
+
+  hierarchy.value = function(x) {
+    if (!arguments.length) return value;
+    value = x;
+    return hierarchy;
+  };
+
+  // Re-evaluates the `value` property for the specified hierarchy.
+  hierarchy.revalue = function(root) {
+    revalue(root, 0);
+    return root;
+  };
+
+  return hierarchy;
+};
+
+// A method assignment helper for hierarchy subclasses.
+function d3_layout_hierarchyRebind(object, hierarchy) {
+  object.sort = d3.rebind(object, hierarchy.sort);
+  object.children = d3.rebind(object, hierarchy.children);
+  object.links = d3_layout_hierarchyLinks;
+  object.value = d3.rebind(object, hierarchy.value);
+
+  // If the new API is used, enabling inlining.
+  object.nodes = function(d) {
+    d3_layout_hierarchyInline = true;
+    return (object.nodes = object)(d);
+  };
+
+  return object;
+}
+
+function d3_layout_hierarchyChildren(d) {
+  return d.children;
+}
+
+function d3_layout_hierarchyValue(d) {
+  return d.value;
+}
+
+function d3_layout_hierarchySort(a, b) {
+  return b.value - a.value;
+}
+
+// Returns an array source+target objects for the specified nodes.
+function d3_layout_hierarchyLinks(nodes) {
+  return d3.merge(nodes.map(function(parent) {
+    return (parent.children || []).map(function(child) {
+      return {source: parent, target: child};
+    });
+  }));
+}
+
+// For backwards-compatibility, don't enable inlining by default.
+var d3_layout_hierarchyInline = false;
+d3.layout.pack = function() {
+  var hierarchy = d3.layout.hierarchy().sort(d3_layout_packSort),
+      size = [1, 1];
+
+  function pack(d, i) {
+    var nodes = hierarchy.call(this, d, i),
+        root = nodes[0];
+
+    // Recursively compute the layout.
+    root.x = 0;
+    root.y = 0;
+    d3_layout_packTree(root);
+
+    // Scale the layout to fit the requested size.
+    var w = size[0],
+        h = size[1],
+        k = 1 / Math.max(2 * root.r / w, 2 * root.r / h);
+    d3_layout_packTransform(root, w / 2, h / 2, k);
+
+    return nodes;
+  }
+
+  pack.size = function(x) {
+    if (!arguments.length) return size;
+    size = x;
+    return pack;
+  };
+
+  return d3_layout_hierarchyRebind(pack, hierarchy);
+};
+
+function d3_layout_packSort(a, b) {
+  return a.value - b.value;
+}
+
+function d3_layout_packInsert(a, b) {
+  var c = a._pack_next;
+  a._pack_next = b;
+  b._pack_prev = a;
+  b._pack_next = c;
+  c._pack_prev = b;
+}
+
+function d3_layout_packSplice(a, b) {
+  a._pack_next = b;
+  b._pack_prev = a;
+}
+
+function d3_layout_packIntersects(a, b) {
+  var dx = b.x - a.x,
+      dy = b.y - a.y,
+      dr = a.r + b.r;
+  return (dr * dr - dx * dx - dy * dy) > .001; // within epsilon
+}
+
+function d3_layout_packCircle(nodes) {
+  var xMin = Infinity,
+      xMax = -Infinity,
+      yMin = Infinity,
+      yMax = -Infinity,
+      n = nodes.length,
+      a, b, c, j, k;
+
+  function bound(node) {
+    xMin = Math.min(node.x - node.r, xMin);
+    xMax = Math.max(node.x + node.r, xMax);
+    yMin = Math.min(node.y - node.r, yMin);
+    yMax = Math.max(node.y + node.r, yMax);
+  }
+
+  // Create node links.
+  nodes.forEach(d3_layout_packLink);
+
+  // Create first node.
+  a = nodes[0];
+  a.x = -a.r;
+  a.y = 0;
+  bound(a);
+
+  // Create second node.
+  if (n > 1) {
+    b = nodes[1];
+    b.x = b.r;
+    b.y = 0;
+    bound(b);
+
+    // Create third node and build chain.
+    if (n > 2) {
+      c = nodes[2];
+      d3_layout_packPlace(a, b, c);
+      bound(c);
+      d3_layout_packInsert(a, c);
+      a._pack_prev = c;
+      d3_layout_packInsert(c, b);
+      b = a._pack_next;
+
+      // Now iterate through the rest.
+      for (var i = 3; i < n; i++) {
+        d3_layout_packPlace(a, b, c = nodes[i]);
+
+        // Search for the closest intersection.
+        var isect = 0, s1 = 1, s2 = 1;
+        for (j = b._pack_next; j !== b; j = j._pack_next, s1++) {
+          if (d3_layout_packIntersects(j, c)) {
+            isect = 1;
+            break;
+          }
+        }
+        if (isect == 1) {
+          for (k = a._pack_prev; k !== j._pack_prev; k = k._pack_prev, s2++) {
+            if (d3_layout_packIntersects(k, c)) {
+              if (s2 < s1) {
+                isect = -1;
+                j = k;
+              }
+              break;
+            }
+          }
+        }
+
+        // Update node chain.
+        if (isect == 0) {
+          d3_layout_packInsert(a, c);
+          b = c;
+          bound(c);
+        } else if (isect > 0) {
+          d3_layout_packSplice(a, j);
+          b = j;
+          i--;
+        } else { // isect < 0
+          d3_layout_packSplice(j, b);
+          a = j;
+          i--;
+        }
+      }
+    }
+  }
+
+  // Re-center the circles and return the encompassing radius.
+  var cx = (xMin + xMax) / 2,
+      cy = (yMin + yMax) / 2,
+      cr = 0;
+  for (var i = 0; i < n; i++) {
+    var node = nodes[i];
+    node.x -= cx;
+    node.y -= cy;
+    cr = Math.max(cr, node.r + Math.sqrt(node.x * node.x + node.y * node.y));
+  }
+
+  // Remove node links.
+  nodes.forEach(d3_layout_packUnlink);
+
+  return cr;
+}
+
+function d3_layout_packLink(node) {
+  node._pack_next = node._pack_prev = node;
+}
+
+function d3_layout_packUnlink(node) {
+  delete node._pack_next;
+  delete node._pack_prev;
+}
+
+function d3_layout_packTree(node) {
+  var children = node.children;
+  if (children && children.length) {
+    children.forEach(d3_layout_packTree);
+    node.r = d3_layout_packCircle(children);
+  } else {
+    node.r = Math.sqrt(node.value);
+  }
+}
+
+function d3_layout_packTransform(node, x, y, k) {
+  var children = node.children;
+  node.x = (x += k * node.x);
+  node.y = (y += k * node.y);
+  node.r *= k;
+  if (children) {
+    var i = -1, n = children.length;
+    while (++i < n) d3_layout_packTransform(children[i], x, y, k);
+  }
+}
+
+function d3_layout_packPlace(a, b, c) {
+  var db = a.r + c.r,
+      dx = b.x - a.x,
+      dy = b.y - a.y;
+  if (db && (dx || dy)) {
+    var da = b.r + c.r,
+        dc = Math.sqrt(dx * dx + dy * dy),
+        cos = Math.max(-1, Math.min(1, (db * db + dc * dc - da * da) / (2 * db * dc))),
+        theta = Math.acos(cos),
+        x = cos * (db /= dc),
+        y = Math.sin(theta) * db;
+    c.x = a.x + x * dx + y * dy;
+    c.y = a.y + x * dy - y * dx;
+  } else {
+    c.x = a.x + db;
+    c.y = a.y;
+  }
+}
+// Implements a hierarchical layout using the cluster (or dendogram) algorithm.
+d3.layout.cluster = function() {
+  var hierarchy = d3.layout.hierarchy().sort(null).value(null),
+      separation = d3_layout_treeSeparation,
+      size = [1, 1]; // width, height
+
+  function cluster(d, i) {
+    var nodes = hierarchy.call(this, d, i),
+        root = nodes[0],
+        previousNode,
+        x = 0,
+        kx,
+        ky;
+
+    // First walk, computing the initial x & y values.
+    d3_layout_treeVisitAfter(root, function(node) {
+      var children = node.children;
+      if (children && children.length) {
+        node.x = d3_layout_clusterX(children);
+        node.y = d3_layout_clusterY(children);
+      } else {
+        node.x = previousNode ? x += separation(node, previousNode) : 0;
+        node.y = 0;
+        previousNode = node;
+      }
+    });
+
+    // Compute the left-most, right-most, and depth-most nodes for extents.
+    var left = d3_layout_clusterLeft(root),
+        right = d3_layout_clusterRight(root),
+        x0 = left.x - separation(left, right) / 2,
+        x1 = right.x + separation(right, left) / 2;
+
+    // Second walk, normalizing x & y to the desired size.
+    d3_layout_treeVisitAfter(root, function(node) {
+      node.x = (node.x - x0) / (x1 - x0) * size[0];
+      node.y = (1 - node.y / root.y) * size[1];
+    });
+
+    return nodes;
+  }
+
+  cluster.separation = function(x) {
+    if (!arguments.length) return separation;
+    separation = x;
+    return cluster;
+  };
+
+  cluster.size = function(x) {
+    if (!arguments.length) return size;
+    size = x;
+    return cluster;
+  };
+
+  return d3_layout_hierarchyRebind(cluster, hierarchy);
+};
+
+function d3_layout_clusterY(children) {
+  return 1 + d3.max(children, function(child) {
+    return child.y;
+  });
+}
+
+function d3_layout_clusterX(children) {
+  return children.reduce(function(x, child) {
+    return x + child.x;
+  }, 0) / children.length;
+}
+
+function d3_layout_clusterLeft(node) {
+  var children = node.children;
+  return children && children.length ? d3_layout_clusterLeft(children[0]) : node;
+}
+
+function d3_layout_clusterRight(node) {
+  var children = node.children, n;
+  return children && (n = children.length) ? d3_layout_clusterRight(children[n - 1]) : node;
+}
+// Node-link tree diagram using the Reingold-Tilford "tidy" algorithm
+d3.layout.tree = function() {
+  var hierarchy = d3.layout.hierarchy().sort(null).value(null),
+      separation = d3_layout_treeSeparation,
+      size = [1, 1]; // width, height
+
+  function tree(d, i) {
+    var nodes = hierarchy.call(this, d, i),
+        root = nodes[0];
+
+    function firstWalk(node, previousSibling) {
+      var children = node.children,
+          layout = node._tree;
+      if (children && (n = children.length)) {
+        var n,
+            firstChild = children[0],
+            previousChild,
+            ancestor = firstChild,
+            child,
+            i = -1;
+        while (++i < n) {
+          child = children[i];
+          firstWalk(child, previousChild);
+          ancestor = apportion(child, previousChild, ancestor);
+          previousChild = child;
+        }
+        d3_layout_treeShift(node);
+        var midpoint = .5 * (firstChild._tree.prelim + child._tree.prelim);
+        if (previousSibling) {
+          layout.prelim = previousSibling._tree.prelim + separation(node, previousSibling);
+          layout.mod = layout.prelim - midpoint;
+        } else {
+          layout.prelim = midpoint;
+        }
+      } else {
+        if (previousSibling) {
+          layout.prelim = previousSibling._tree.prelim + separation(node, previousSibling);
+        }
+      }
+    }
+
+    function secondWalk(node, x) {
+      node.x = node._tree.prelim + x;
+      var children = node.children;
+      if (children && (n = children.length)) {
+        var i = -1,
+            n;
+        x += node._tree.mod;
+        while (++i < n) {
+          secondWalk(children[i], x);
+        }
+      }
+    }
+
+    function apportion(node, previousSibling, ancestor) {
+      if (previousSibling) {
+        var vip = node,
+            vop = node,
+            vim = previousSibling,
+            vom = node.parent.children[0],
+            sip = vip._tree.mod,
+            sop = vop._tree.mod,
+            sim = vim._tree.mod,
+            som = vom._tree.mod,
+            shift;
+        while (vim = d3_layout_treeRight(vim), vip = d3_layout_treeLeft(vip), vim && vip) {
+          vom = d3_layout_treeLeft(vom);
+          vop = d3_layout_treeRight(vop);
+          vop._tree.ancestor = node;
+          shift = vim._tree.prelim + sim - vip._tree.prelim - sip + separation(vim, vip);
+          if (shift > 0) {
+            d3_layout_treeMove(d3_layout_treeAncestor(vim, node, ancestor), node, shift);
+            sip += shift;
+            sop += shift;
+          }
+          sim += vim._tree.mod;
+          sip += vip._tree.mod;
+          som += vom._tree.mod;
+          sop += vop._tree.mod;
+        }
+        if (vim && !d3_layout_treeRight(vop)) {
+          vop._tree.thread = vim;
+          vop._tree.mod += sim - sop;
+        }
+        if (vip && !d3_layout_treeLeft(vom)) {
+          vom._tree.thread = vip;
+          vom._tree.mod += sip - som;
+          ancestor = node;
+        }
+      }
+      return ancestor;
+    }
+
+    // Initialize temporary layout variables.
+    d3_layout_treeVisitAfter(root, function(node, previousSibling) {
+      node._tree = {
+        ancestor: node,
+        prelim: 0,
+        mod: 0,
+        change: 0,
+        shift: 0,
+        number: previousSibling ? previousSibling._tree.number + 1 : 0
+      };
+    });
+
+    // Compute the layout using Buchheim et al.'s algorithm.
+    firstWalk(root);
+    secondWalk(root, -root._tree.prelim);
+
+    // Compute the left-most, right-most, and depth-most nodes for extents.
+    var left = d3_layout_treeSearch(root, d3_layout_treeLeftmost),
+        right = d3_layout_treeSearch(root, d3_layout_treeRightmost),
+        deep = d3_layout_treeSearch(root, d3_layout_treeDeepest),
+        x0 = left.x - separation(left, right) / 2,
+        x1 = right.x + separation(right, left) / 2,
+        y1 = deep.depth || 1;
+
+    // Clear temporary layout variables; transform x and y.
+    d3_layout_treeVisitAfter(root, function(node) {
+      node.x = (node.x - x0) / (x1 - x0) * size[0];
+      node.y = node.depth / y1 * size[1];
+      delete node._tree;
+    });
+
+    return nodes;
+  }
+
+  tree.separation = function(x) {
+    if (!arguments.length) return separation;
+    separation = x;
+    return tree;
+  };
+
+  tree.size = function(x) {
+    if (!arguments.length) return size;
+    size = x;
+    return tree;
+  };
+
+  return d3_layout_hierarchyRebind(tree, hierarchy);
+};
+
+function d3_layout_treeSeparation(a, b) {
+  return a.parent == b.parent ? 1 : 2;
+}
+
+// function d3_layout_treeSeparationRadial(a, b) {
+//   return (a.parent == b.parent ? 1 : 2) / a.depth;
+// }
+
+function d3_layout_treeLeft(node) {
+  var children = node.children;
+  return children && children.length ? children[0] : node._tree.thread;
+}
+
+function d3_layout_treeRight(node) {
+  var children = node.children,
+      n;
+  return children && (n = children.length) ? children[n - 1] : node._tree.thread;
+}
+
+function d3_layout_treeSearch(node, compare) {
+  var children = node.children;
+  if (children && (n = children.length)) {
+    var child,
+        n,
+        i = -1;
+    while (++i < n) {
+      if (compare(child = d3_layout_treeSearch(children[i], compare), node) > 0) {
+        node = child;
+      }
+    }
+  }
+  return node;
+}
+
+function d3_layout_treeRightmost(a, b) {
+  return a.x - b.x;
+}
+
+function d3_layout_treeLeftmost(a, b) {
+  return b.x - a.x;
+}
+
+function d3_layout_treeDeepest(a, b) {
+  return a.depth - b.depth;
+}
+
+function d3_layout_treeVisitAfter(node, callback) {
+  function visit(node, previousSibling) {
+    var children = node.children;
+    if (children && (n = children.length)) {
+      var child,
+          previousChild = null,
+          i = -1,
+          n;
+      while (++i < n) {
+        child = children[i];
+        visit(child, previousChild);
+        previousChild = child;
+      }
+    }
+    callback(node, previousSibling);
+  }
+  visit(node, null);
+}
+
+function d3_layout_treeShift(node) {
+  var shift = 0,
+      change = 0,
+      children = node.children,
+      i = children.length,
+      child;
+  while (--i >= 0) {
+    child = children[i]._tree;
+    child.prelim += shift;
+    child.mod += shift;
+    shift += child.shift + (change += child.change);
+  }
+}
+
+function d3_layout_treeMove(ancestor, node, shift) {
+  ancestor = ancestor._tree;
+  node = node._tree;
+  var change = shift / (node.number - ancestor.number);
+  ancestor.change += change;
+  node.change -= change;
+  node.shift += shift;
+  node.prelim += shift;
+  node.mod += shift;
+}
+
+function d3_layout_treeAncestor(vim, node, ancestor) {
+  return vim._tree.ancestor.parent == node.parent
+      ? vim._tree.ancestor
+      : ancestor;
+}
+// Squarified Treemaps by Mark Bruls, Kees Huizing, and Jarke J. van Wijk
+// Modified to support a target aspect ratio by Jeff Heer
+d3.layout.treemap = function() {
+  var hierarchy = d3.layout.hierarchy(),
+      round = Math.round,
+      size = [1, 1], // width, height
+      padding = null,
+      pad = d3_layout_treemapPadNull,
+      sticky = false,
+      stickies,
+      ratio = 0.5 * (1 + Math.sqrt(5)); // golden ratio
+
+  // Compute the area for each child based on value & scale.
+  function scale(children, k) {
+    var i = -1,
+        n = children.length,
+        child,
+        area;
+    while (++i < n) {
+      area = (child = children[i]).value * (k < 0 ? 0 : k);
+      child.area = isNaN(area) || area <= 0 ? 0 : area;
+    }
+  }
+
+  // Recursively arranges the specified node's children into squarified rows.
+  function squarify(node) {
+    var children = node.children;
+    if (children && children.length) {
+      var rect = pad(node),
+          row = [],
+          remaining = children.slice(), // copy-on-write
+          child,
+          best = Infinity, // the best row score so far
+          score, // the current row score
+          u = Math.min(rect.dx, rect.dy), // initial orientation
+          n;
+      scale(remaining, rect.dx * rect.dy / node.value);
+      row.area = 0;
+      while ((n = remaining.length) > 0) {
+        row.push(child = remaining[n - 1]);
+        row.area += child.area;
+        if ((score = worst(row, u)) <= best) { // continue with this orientation
+          remaining.pop();
+          best = score;
+        } else { // abort, and try a different orientation
+          row.area -= row.pop().area;
+          position(row, u, rect, false);
+          u = Math.min(rect.dx, rect.dy);
+          row.length = row.area = 0;
+          best = Infinity;
+        }
+      }
+      if (row.length) {
+        position(row, u, rect, true);
+        row.length = row.area = 0;
+      }
+      children.forEach(squarify);
+    }
+  }
+
+  // Recursively resizes the specified node's children into existing rows.
+  // Preserves the existing layout!
+  function stickify(node) {
+    var children = node.children;
+    if (children && children.length) {
+      var rect = pad(node),
+          remaining = children.slice(), // copy-on-write
+          child,
+          row = [];
+      scale(remaining, rect.dx * rect.dy / node.value);
+      row.area = 0;
+      while (child = remaining.pop()) {
+        row.push(child);
+        row.area += child.area;
+        if (child.z != null) {
+          position(row, child.z ? rect.dx : rect.dy, rect, !remaining.length);
+          row.length = row.area = 0;
+        }
+      }
+      children.forEach(stickify);
+    }
+  }
+
+  // Computes the score for the specified row, as the worst aspect ratio.
+  function worst(row, u) {
+    var s = row.area,
+        r,
+        rmax = 0,
+        rmin = Infinity,
+        i = -1,
+        n = row.length;
+    while (++i < n) {
+      if (!(r = row[i].area)) continue;
+      if (r < rmin) rmin = r;
+      if (r > rmax) rmax = r;
+    }
+    s *= s;
+    u *= u;
+    return s
+        ? Math.max((u * rmax * ratio) / s, s / (u * rmin * ratio))
+        : Infinity;
+  }
+
+  // Positions the specified row of nodes. Modifies `rect`.
+  function position(row, u, rect, flush) {
+    var i = -1,
+        n = row.length,
+        x = rect.x,
+        y = rect.y,
+        v = u ? round(row.area / u) : 0,
+        o;
+    if (u == rect.dx) { // horizontal subdivision
+      if (flush || v > rect.dy) v = v ? rect.dy : 0; // over+underflow
+      while (++i < n) {
+        o = row[i];
+        o.x = x;
+        o.y = y;
+        o.dy = v;
+        x += o.dx = v ? round(o.area / v) : 0;
+      }
+      o.z = true;
+      o.dx += rect.x + rect.dx - x; // rounding error
+      rect.y += v;
+      rect.dy -= v;
+    } else { // vertical subdivision
+      if (flush || v > rect.dx) v = v ? rect.dx : 0; // over+underflow
+      while (++i < n) {
+        o = row[i];
+        o.x = x;
+        o.y = y;
+        o.dx = v;
+        y += o.dy = v ? round(o.area / v) : 0;
+      }
+      o.z = false;
+      o.dy += rect.y + rect.dy - y; // rounding error
+      rect.x += v;
+      rect.dx -= v;
+    }
+  }
+
+  function treemap(d) {
+    var nodes = stickies || hierarchy(d),
+        root = nodes[0];
+    root.x = 0;
+    root.y = 0;
+    root.dx = size[0];
+    root.dy = size[1];
+    if (stickies) hierarchy.revalue(root);
+    scale([root], root.dx * root.dy / root.value);
+    (stickies ? stickify : squarify)(root);
+    if (sticky) stickies = nodes;
+    return nodes;
+  }
+
+  treemap.size = function(x) {
+    if (!arguments.length) return size;
+    size = x;
+    return treemap;
+  };
+
+  treemap.padding = function(x) {
+    if (!arguments.length) return padding;
+
+    function padFunction(node) {
+      var p = x.call(treemap, node, node.depth);
+      return p == null
+          ? d3_layout_treemapPadNull(node)
+          : d3_layout_treemapPad(node, typeof p === "number" ? [p, p, p, p] : p);
+    }
+
+    function padConstant(node) {
+      return d3_layout_treemapPad(node, x);
+    }
+
+    var type;
+    pad = (padding = x) == null ? d3_layout_treemapPadNull
+        : (type = typeof x) === "function" ? padFunction
+        : type === "number" ? (x = [x, x, x, x], padConstant)
+        : padConstant;
+    return treemap;
+  };
+
+  treemap.round = function(x) {
+    if (!arguments.length) return round != Number;
+    round = x ? Math.round : Number;
+    return treemap;
+  };
+
+  treemap.sticky = function(x) {
+    if (!arguments.length) return sticky;
+    sticky = x;
+    stickies = null;
+    return treemap;
+  };
+
+  treemap.ratio = function(x) {
+    if (!arguments.length) return ratio;
+    ratio = x;
+    return treemap;
+  };
+
+  return d3_layout_hierarchyRebind(treemap, hierarchy);
+};
+
+function d3_layout_treemapPadNull(node) {
+  return {x: node.x, y: node.y, dx: node.dx, dy: node.dy};
+}
+
+function d3_layout_treemapPad(node, padding) {
+  var x = node.x + padding[3],
+      y = node.y + padding[0],
+      dx = node.dx - padding[1] - padding[3],
+      dy = node.dy - padding[0] - padding[2];
+  if (dx < 0) { x += dx / 2; dx = 0; }
+  if (dy < 0) { y += dy / 2; dy = 0; }
+  return {x: x, y: y, dx: dx, dy: dy};
+}
+})();
+(function(){d3.time = {};
+
+var d3_time = Date;
+d3.time.format = function(template) {
+  var n = template.length;
+
+  function format(date) {
+    var string = [],
+        i = -1,
+        j = 0,
+        c,
+        f;
+    while (++i < n) {
+      if (template.charCodeAt(i) == 37) {
+        string.push(
+            template.substring(j, i),
+            (f = d3_time_formats[c = template.charAt(++i)])
+            ? f(date) : c);
+        j = i + 1;
+      }
+    }
+    string.push(template.substring(j, i));
+    return string.join("");
+  }
+
+  format.parse = function(string) {
+    var date = new d3_time(1900, 0, 1),
+        i = d3_time_parse(date, template, string, 0);
+    if (i != string.length) return null;
+    if (date.hour12) {
+      var hours = date.getHours() % 12;
+      date.setHours(date.hour12pm ? hours + 12 : hours);
+    }
+    delete date.hour12;
+    delete date.hour12pm;
+    return date;
+  };
+
+  format.toString = function() {
+    return template;
+  };
+
+  return format;
+};
+
+function d3_time_parse(date, template, string, j) {
+  var c,
+      p,
+      i = 0,
+      n = template.length,
+      m = string.length;
+  while (i < n) {
+    if (j >= m) return -1;
+    c = template.charCodeAt(i++);
+    if (c == 37) {
+      p = d3_time_parsers[template.charAt(i++)];
+      if (!p || ((j = p(date, string, j)) < 0)) return -1;
+    } else if (c != string.charCodeAt(j++)) {
+      return -1;
+    }
+  }
+  return j;
+}
+
+var d3_time_zfill2 = d3.format("02d"),
+    d3_time_zfill3 = d3.format("03d"),
+    d3_time_zfill4 = d3.format("04d"),
+    d3_time_sfill2 = d3.format("2d");
+
+var d3_time_formats = {
+  a: function(d) { return d3_time_weekdays[d.getDay()].substring(0, 3); },
+  A: function(d) { return d3_time_weekdays[d.getDay()]; },
+  b: function(d) { return d3_time_months[d.getMonth()].substring(0, 3); },
+  B: function(d) { return d3_time_months[d.getMonth()]; },
+  c: d3.time.format("%a %b %e %H:%M:%S %Y"),
+  d: function(d) { return d3_time_zfill2(d.getDate()); },
+  e: function(d) { return d3_time_sfill2(d.getDate()); },
+  H: function(d) { return d3_time_zfill2(d.getHours()); },
+  I: function(d) { return d3_time_zfill2(d.getHours() % 12 || 12); },
+  j: d3_time_dayOfYear,
+  L: function(d) { return d3_time_zfill3(d.getMilliseconds()); },
+  m: function(d) { return d3_time_zfill2(d.getMonth() + 1); },
+  M: function(d) { return d3_time_zfill2(d.getMinutes()); },
+  p: function(d) { return d.getHours() >= 12 ? "PM" : "AM"; },
+  S: function(d) { return d3_time_zfill2(d.getSeconds()); },
+  U: d3_time_weekNumberSunday,
+  w: function(d) { return d.getDay(); },
+  W: d3_time_weekNumberMonday,
+  x: d3.time.format("%m/%d/%y"),
+  X: d3.time.format("%H:%M:%S"),
+  y: function(d) { return d3_time_zfill2(d.getFullYear() % 100); },
+  Y: function(d) { return d3_time_zfill4(d.getFullYear() % 10000); },
+  Z: d3_time_zone,
+  "%": function(d) { return "%"; }
+};
+
+var d3_time_parsers = {
+  a: d3_time_parseWeekdayAbbrev,
+  A: d3_time_parseWeekday,
+  b: d3_time_parseMonthAbbrev,
+  B: d3_time_parseMonth,
+  c: d3_time_parseLocaleFull,
+  d: d3_time_parseDay,
+  e: d3_time_parseDay,
+  H: d3_time_parseHour24,
+  I: d3_time_parseHour12,
+  // j: function(d, s, i) { /*TODO day of year [001,366] */ return i; },
+  L: d3_time_parseMilliseconds,
+  m: d3_time_parseMonthNumber,
+  M: d3_time_parseMinutes,
+  p: d3_time_parseAmPm,
+  S: d3_time_parseSeconds,
+  // U: function(d, s, i) { /*TODO week number (sunday) [00,53] */ return i; },
+  // w: function(d, s, i) { /*TODO weekday [0,6] */ return i; },
+  // W: function(d, s, i) { /*TODO week number (monday) [00,53] */ return i; },
+  x: d3_time_parseLocaleDate,
+  X: d3_time_parseLocaleTime,
+  y: d3_time_parseYear,
+  Y: d3_time_parseFullYear
+  // ,
+  // Z: function(d, s, i) { /*TODO time zone */ return i; },
+  // "%": function(d, s, i) { /*TODO literal % */ return i; }
+};
+
+// Note: weekday is validated, but does not set the date.
+function d3_time_parseWeekdayAbbrev(date, string, i) {
+  return string.substring(i, i += 3).toLowerCase() in d3_time_weekdayAbbrevLookup ? i : -1;
+}
+
+var d3_time_weekdayAbbrevLookup = {
+  sun: 3,
+  mon: 3,
+  tue: 3,
+  wed: 3,
+  thu: 3,
+  fri: 3,
+  sat: 3
+};
+
+// Note: weekday is validated, but does not set the date.
+function d3_time_parseWeekday(date, string, i) {
+  d3_time_weekdayRe.lastIndex = 0;
+  var n = d3_time_weekdayRe.exec(string.substring(i, i + 10));
+  return n ? i += n[0].length : -1;
+}
+
+var d3_time_weekdayRe = /^(?:Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday)/ig;
+
+var d3_time_weekdays = [
+  "Sunday",
+  "Monday",
+  "Tuesday",
+  "Wednesday",
+  "Thursday",
+  "Friday",
+  "Saturday"
+];
+
+function d3_time_parseMonthAbbrev(date, string, i) {
+  var n = d3_time_monthAbbrevLookup[string.substring(i, i += 3).toLowerCase()];
+  return n == null ? -1 : (date.setMonth(n), i);
+}
+
+var d3_time_monthAbbrevLookup = {
+  jan: 0,
+  feb: 1,
+  mar: 2,
+  apr: 3,
+  may: 4,
+  jun: 5,
+  jul: 6,
+  aug: 7,
+  sep: 8,
+  oct: 9,
+  nov: 10,
+  dec: 11
+};
+
+function d3_time_parseMonth(date, string, i) {
+  d3_time_monthRe.lastIndex = 0;
+  var n = d3_time_monthRe.exec(string.substring(i, i + 12));
+  return n ? (date.setMonth(d3_time_monthLookup[n[0].toLowerCase()]), i += n[0].length) : -1;
+}
+
+var d3_time_monthRe = /^(?:January|February|March|April|May|June|July|August|September|October|November|December)/ig;
+
+var d3_time_monthLookup = {
+  january: 0,
+  february: 1,
+  march: 2,
+  april: 3,
+  may: 4,
+  june: 5,
+  july: 6,
+  august: 7,
+  september: 8,
+  october: 9,
+  november: 10,
+  december: 11
+};
+
+var d3_time_months = [
+  "January",
+  "February",
+  "March",
+  "April",
+  "May",
+  "June",
+  "July",
+  "August",
+  "September",
+  "October",
+  "November",
+  "December"
+];
+
+function d3_time_parseLocaleFull(date, string, i) {
+  return d3_time_parse(date, d3_time_formats.c.toString(), string, i);
+}
+
+function d3_time_parseLocaleDate(date, string, i) {
+  return d3_time_parse(date, d3_time_formats.x.toString(), string, i);
+}
+
+function d3_time_parseLocaleTime(date, string, i) {
+  return d3_time_parse(date, d3_time_formats.X.toString(), string, i);
+}
+
+function d3_time_parseFullYear(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 4));
+  return n ? (date.setFullYear(n[0]), i += n[0].length) : -1;
+}
+
+function d3_time_parseYear(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 2));
+  return n ? (date.setFullYear(d3_time_century() + +n[0]), i += n[0].length) : -1;
+}
+
+function d3_time_century() {
+  return ~~(new Date().getFullYear() / 1000) * 1000;
+}
+
+function d3_time_parseMonthNumber(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 2));
+  return n ? (date.setMonth(n[0] - 1), i += n[0].length) : -1;
+}
+
+function d3_time_parseDay(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 2));
+  return n ? (date.setDate(+n[0]), i += n[0].length) : -1;
+}
+
+// Note: we don't validate that the hour is in the range [0,23].
+function d3_time_parseHour24(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 2));
+  return n ? (date.setHours(+n[0]), i += n[0].length) : -1;
+}
+
+// Note: we don't validate that the hour is in the range [1,12].
+function d3_time_parseHour12(date, string, i) {
+  date.hour12 = true;
+  return d3_time_parseHour24(date, string, i);
+}
+
+function d3_time_parseMinutes(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 2));
+  return n ? (date.setMinutes(+n[0]), i += n[0].length) : -1;
+}
+
+function d3_time_parseSeconds(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 2));
+  return n ? (date.setSeconds(+n[0]), i += n[0].length) : -1;
+}
+
+function d3_time_parseMilliseconds(date, string, i) {
+  d3_time_numberRe.lastIndex = 0;
+  var n = d3_time_numberRe.exec(string.substring(i, i + 3));
+  return n ? (date.setMilliseconds(+n[0]), i += n[0].length) : -1;
+}
+
+// Note: we don't look at the next directive.
+var d3_time_numberRe = /\s*\d+/;
+
+function d3_time_parseAmPm(date, string, i) {
+  var n = d3_time_amPmLookup[string.substring(i, i += 2).toLowerCase()];
+  return n == null ? -1 : (date.hour12pm = n, i);
+}
+
+var d3_time_amPmLookup = {
+  am: 0,
+  pm: 1
+};
+
+function d3_time_year(d) {
+  return new d3_time(d.getFullYear(), 0, 1);
+}
+
+function d3_time_daysElapsed(d0, d1) {
+  return ~~((d1 - d0) / 864e5 - (d1.getTimezoneOffset() - d0.getTimezoneOffset()) / 1440);
+}
+
+function d3_time_dayOfYear(d) {
+  return d3_time_zfill3(1 + d3_time_daysElapsed(d3_time_year(d), d));
+}
+
+function d3_time_weekNumberSunday(d) {
+  var d0 = d3_time_year(d);
+  return d3_time_zfill2(~~((d3_time_daysElapsed(d0, d) + d0.getDay()) / 7));
+}
+
+function d3_time_weekNumberMonday(d) {
+  var d0 = d3_time_year(d);
+  return d3_time_zfill2(~~((d3_time_daysElapsed(d0, d) + (d0.getDay() + 6) % 7) / 7));
+}
+
+// TODO table of time zone offset names?
+function d3_time_zone(d) {
+  var z = d.getTimezoneOffset(),
+      zs = z > 0 ? "-" : "+",
+      zh = ~~(Math.abs(z) / 60),
+      zm = Math.abs(z) % 60;
+  return zs + d3_time_zfill2(zh) + d3_time_zfill2(zm);
+}
+d3.time.format.utc = function(template) {
+  var local = d3.time.format(template);
+
+  function format(date) {
+    try {
+      d3_time = d3_time_format_utc;
+      var utc = new d3_time();
+      utc._ = date;
+      return local(utc);
+    } finally {
+      d3_time = Date;
+    }
+  }
+
+  format.parse = function(string) {
+    try {
+      d3_time = d3_time_format_utc;
+      var date = local.parse(string);
+      return date && date._;
+    } finally {
+      d3_time = Date;
+    }
+  };
+
+  format.toString = local.toString;
+
+  return format;
+};
+
+function d3_time_format_utc() {
+  this._ = new Date(Date.UTC.apply(this, arguments));
+}
+
+d3_time_format_utc.prototype = {
+  getDate: function() { return this._.getUTCDate(); },
+  getDay: function() { return this._.getUTCDay(); },
+  getFullYear: function() { return this._.getUTCFullYear(); },
+  getHours: function() { return this._.getUTCHours(); },
+  getMilliseconds: function() { return this._.getUTCMilliseconds(); },
+  getMinutes: function() { return this._.getUTCMinutes(); },
+  getMonth: function() { return this._.getUTCMonth(); },
+  getSeconds: function() { return this._.getUTCSeconds(); },
+  getTimezoneOffset: function() { return 0; },
+  valueOf: function() { return this._.getTime(); },
+  setDate: function(x) { this._.setUTCDate(x); },
+  setDay: function(x) { this._.setUTCDay(x); },
+  setFullYear: function(x) { this._.setUTCFullYear(x); },
+  setHours: function(x) { this._.setUTCHours(x); },
+  setMilliseconds: function(x) { this._.setUTCMilliseconds(x); },
+  setMinutes: function(x) { this._.setUTCMinutes(x); },
+  setMonth: function(x) { this._.setUTCMonth(x); },
+  setSeconds: function(x) { this._.setUTCSeconds(x); }
+};
+var d3_time_formatIso = d3.time.format.utc("%Y-%m-%dT%H:%M:%S.%LZ");
+
+d3.time.format.iso = Date.prototype.toISOString ? d3_time_formatIsoNative : d3_time_formatIso;
+
+function d3_time_formatIsoNative(date) {
+  return date.toISOString();
+}
+
+d3_time_formatIsoNative.parse = function(string) {
+  return new Date(string);
+};
+
+d3_time_formatIsoNative.toString = d3_time_formatIso.toString;
+function d3_time_range(floor, step, number) {
+  return function(t0, t1, dt) {
+    var time = floor(t0), times = [];
+    if (time < t0) step(time);
+    if (dt > 1) {
+      while (time < t1) {
+        var date = new Date(+time);
+        if (!(number(date) % dt)) times.push(date);
+        step(time);
+      }
+    } else {
+      while (time < t1) times.push(new Date(+time)), step(time);
+    }
+    return times;
+  };
+}
+d3.time.second = function(date) {
+  return new Date(~~(date / 1e3) * 1e3);
+};
+
+d3.time.second.utc = d3.time.second;
+d3.time.seconds = d3_time_range(d3.time.second, function(date) {
+  date.setTime(date.getTime() + 1e3);
+}, function(date) {
+  return date.getSeconds();
+});
+
+d3.time.seconds.utc = d3.time.seconds;
+d3.time.minute = function(date) {
+  return new Date(~~(date / 6e4) * 6e4);
+};
+
+d3.time.minute.utc = d3.time.minute;d3.time.minutes = d3_time_range(d3.time.minute, d3_time_minutesStep, function(date) {
+  return date.getMinutes();
+});
+
+d3.time.minutes.utc = d3_time_range(d3.time.minute, d3_time_minutesStep, function(date) {
+  return date.getUTCMinutes();
+});
+
+function d3_time_minutesStep(date) {
+  date.setTime(date.getTime() + 6e4); // assumes no leap seconds
+}
+d3.time.hour = function(date) {
+  var offset = date.getTimezoneOffset() / 60;
+  return new Date((~~(date / 36e5 - offset) + offset) * 36e5);
+};
+
+d3.time.hour.utc = function(date) {
+  return new Date(~~(date / 36e5) * 36e5);
+};
+d3.time.hours = d3_time_range(d3.time.hour, d3_time_hoursStep, function(date) {
+  return date.getHours();
+});
+
+d3.time.hours.utc = d3_time_range(d3.time.hour.utc, d3_time_hoursStep, function(date) {
+  return date.getUTCHours();
+});
+
+function d3_time_hoursStep(date) {
+  date.setTime(date.getTime() + 36e5);
+}
+d3.time.day = function(date) {
+  return new Date(date.getFullYear(), date.getMonth(), date.getDate());
+};
+
+d3.time.day.utc = function(date) {
+  return new Date(~~(date / 864e5) * 864e5);
+};
+d3.time.days = d3_time_range(d3.time.day, function(date) {
+  date.setDate(date.getDate() + 1);
+}, function(date) {
+  return date.getDate() - 1;
+});
+
+d3.time.days.utc = d3_time_range(d3.time.day.utc, function(date) {
+  date.setUTCDate(date.getUTCDate() + 1);
+}, function(date) {
+  return date.getUTCDate() - 1;
+});
+d3.time.week = function(date) {
+  (date = d3.time.day(date)).setDate(date.getDate() - date.getDay());
+  return date;
+};
+
+d3.time.week.utc = function(date) {
+  (date = d3.time.day.utc(date)).setUTCDate(date.getUTCDate() - date.getUTCDay());
+  return date;
+};
+d3.time.weeks = d3_time_range(d3.time.week, function(date) {
+  date.setDate(date.getDate() + 7);
+}, function(date) {
+  return ~~((date - new Date(date.getFullYear(), 0, 1)) / 6048e5);
+});
+
+d3.time.weeks.utc = d3_time_range(d3.time.week.utc, function(date) {
+  date.setUTCDate(date.getUTCDate() + 7);
+}, function(date) {
+  return ~~((date - Date.UTC(date.getUTCFullYear(), 0, 1)) / 6048e5);
+});
+d3.time.month = function(date) {
+  return new Date(date.getFullYear(), date.getMonth(), 1);
+};
+
+d3.time.month.utc = function(date) {
+  return new Date(Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), 1));
+};
+d3.time.months = d3_time_range(d3.time.month, function(date) {
+  date.setMonth(date.getMonth() + 1);
+}, function(date) {
+  return date.getMonth();
+});
+
+d3.time.months.utc = d3_time_range(d3.time.month.utc, function(date) {
+  date.setUTCMonth(date.getUTCMonth() + 1);
+}, function(date) {
+  return date.getUTCMonth();
+});
+d3.time.year = function(date) {
+  return new Date(date.getFullYear(), 0, 1);
+};
+
+d3.time.year.utc = function(date) {
+  return new Date(Date.UTC(date.getUTCFullYear(), 0, 1));
+};
+d3.time.years = d3_time_range(d3.time.year, function(date) {
+  date.setFullYear(date.getFullYear() + 1);
+}, function(date) {
+  return date.getFullYear();
+});
+
+d3.time.years.utc = d3_time_range(d3.time.year.utc, function(date) {
+  date.setUTCFullYear(date.getUTCFullYear() + 1);
+}, function(date) {
+  return date.getUTCFullYear();
+});
+// TODO nice
+function d3_time_scale(linear, methods, format) {
+
+  function scale(x) {
+    return linear(x);
+  }
+
+  scale.invert = function(x) {
+    return d3_time_scaleDate(linear.invert(x));
+  };
+
+  scale.domain = function(x) {
+    if (!arguments.length) return linear.domain().map(d3_time_scaleDate);
+    linear.domain(x);
+    return scale;
+  };
+
+  scale.ticks = function(m, k) {
+    var extent = d3_time_scaleExtent(scale.domain());
+    if (typeof m !== "function") {
+      var span = extent[1] - extent[0],
+          target = span / m,
+          i = d3.bisect(d3_time_scaleSteps, target, 1, d3_time_scaleSteps.length - 1);
+      if (Math.log(target / d3_time_scaleSteps[i - 1]) < Math.log(d3_time_scaleSteps[i] / target)) --i;
+      m = methods[i];
+      k = m[1];
+      m = m[0];
+    }
+    return m(extent[0], extent[1], k);
+  };
+
+  scale.tickFormat = function() {
+    return format;
+  };
+
+  scale.copy = function() {
+    return d3_time_scale(linear.copy(), methods, format);
+  };
+
+  // TOOD expose d3_scale_linear_rebind?
+  scale.range = d3.rebind(scale, linear.range);
+  scale.rangeRound = d3.rebind(scale, linear.rangeRound);
+  scale.interpolate = d3.rebind(scale, linear.interpolate);
+  scale.clamp = d3.rebind(scale, linear.clamp);
+
+  return scale;
+}
+
+// TODO expose d3_scaleExtent?
+function d3_time_scaleExtent(domain) {
+  var start = domain[0], stop = domain[domain.length - 1];
+  return start < stop ? [start, stop] : [stop, start];
+}
+
+function d3_time_scaleDate(t) {
+  return new Date(t);
+}
+
+function d3_time_scaleFormat(formats) {
+  return function(date) {
+    var i = formats.length - 1, f = formats[i];
+    while (!f[1](date)) f = formats[--i];
+    return f[0](date);
+  };
+}
+
+var d3_time_scaleSteps = [
+  1e3,    // 1-second
+  5e3,    // 5-second
+  15e3,   // 15-second
+  3e4,    // 30-second
+  6e4,    // 1-minute
+  3e5,    // 5-minute
+  9e5,    // 15-minute
+  18e5,   // 30-minute
+  36e5,   // 1-hour
+  108e5,  // 3-hour
+  216e5,  // 6-hour
+  432e5,  // 12-hour
+  864e5,  // 1-day
+  1728e5, // 2-day
+  6048e5, // 1-week
+  1728e6, // 1-month
+  7776e6, // 3-month
+  31536e6 // 1-year
+];
+
+var d3_time_scaleLocalMethods = [
+  [d3.time.seconds, 1],
+  [d3.time.seconds, 5],
+  [d3.time.seconds, 15],
+  [d3.time.seconds, 30],
+  [d3.time.minutes, 1],
+  [d3.time.minutes, 5],
+  [d3.time.minutes, 15],
+  [d3.time.minutes, 30],
+  [d3.time.hours, 1],
+  [d3.time.hours, 3],
+  [d3.time.hours, 6],
+  [d3.time.hours, 12],
+  [d3.time.days, 1],
+  [d3.time.days, 2],
+  [d3.time.weeks, 1],
+  [d3.time.months, 1],
+  [d3.time.months, 3],
+  [d3.time.years, 1]
+];
+
+var d3_time_scaleLocalFormats = [
+  [d3.time.format("%Y"), function(d) { return true; }],
+  [d3.time.format("%B"), function(d) { return d.getMonth(); }],
+  [d3.time.format("%b %d"), function(d) { return d.getDate() != 1; }],
+  [d3.time.format("%a %d"), function(d) { return d.getDay() && d.getDate() != 1; }],
+  [d3.time.format("%I %p"), function(d) { return d.getHours(); }],
+  [d3.time.format("%I:%M"), function(d) { return d.getMinutes(); }],
+  [d3.time.format(":%S"), function(d) { return d.getSeconds() || d.getMilliseconds(); }]
+];
+
+var d3_time_scaleLocalFormat = d3_time_scaleFormat(d3_time_scaleLocalFormats);
+
+d3.time.scale = function() {
+  return d3_time_scale(d3.scale.linear(), d3_time_scaleLocalMethods, d3_time_scaleLocalFormat);
+};
+var d3_time_scaleUTCMethods = [
+  [d3.time.seconds.utc, 1],
+  [d3.time.seconds.utc, 5],
+  [d3.time.seconds.utc, 15],
+  [d3.time.seconds.utc, 30],
+  [d3.time.minutes.utc, 1],
+  [d3.time.minutes.utc, 5],
+  [d3.time.minutes.utc, 15],
+  [d3.time.minutes.utc, 30],
+  [d3.time.hours.utc, 1],
+  [d3.time.hours.utc, 3],
+  [d3.time.hours.utc, 6],
+  [d3.time.hours.utc, 12],
+  [d3.time.days.utc, 1],
+  [d3.time.days.utc, 2],
+  [d3.time.weeks.utc, 1],
+  [d3.time.months.utc, 1],
+  [d3.time.months.utc, 3],
+  [d3.time.years.utc, 1]
+];
+
+var d3_time_scaleUTCFormats = [
+  [d3.time.format.utc("%Y"), function(d) { return true; }],
+  [d3.time.format.utc("%B"), function(d) { return d.getUTCMonth(); }],
+  [d3.time.format.utc("%b %d"), function(d) { return d.getUTCDate() != 1; }],
+  [d3.time.format.utc("%a %d"), function(d) { return d.getUTCDay() && d.getUTCDate() != 1; }],
+  [d3.time.format.utc("%I %p"), function(d) { return d.getUTCHours(); }],
+  [d3.time.format.utc("%I:%M"), function(d) { return d.getUTCMinutes(); }],
+  [d3.time.format.utc(":%S"), function(d) { return d.getUTCSeconds() || d.getUTCMilliseconds(); }]
+];
+
+var d3_time_scaleUTCFormat = d3_time_scaleFormat(d3_time_scaleUTCFormats);
+
+d3.time.scale.utc = function() {
+  return d3_time_scale(d3.scale.linear(), d3_time_scaleUTCMethods, d3_time_scaleUTCFormat);
+};
+})();
+// Place your application-specific JavaScript functions and classes here
+// This file is automatically included by javascript_include_tag :defaults
+
+$(document).ready(function(){
+
+  $('.alert-message.flash').slideDown('fast', function() {
+    $('.alert-message').delay(5000).slideUp('slow');
+  });
+
+  // overlay
+  $(".module_link").overlay({
+    top: 160,
+    mask: '#fff'
+  }); 
+
+});
+
+
+
+
+
+$(document).ready(function(){
+  
+  $(".sync_help").click(function() {
+    $(this).parents("li").find(".help").slideDown();
+    return false;
+  });
+  
+  $(".sync_what_is").click(function() {
+    $(this).parents("li").find(".what_is").slideDown();
+    return false;
+  });
+    
+  $(".close").click(function() {
+    $(this).parent(".block-message").slideUp();
+    return false;
+  });
+  
+});
+// This is a manifest file that'll be compiled into including all the files listed below.
+// Add new JavaScript/Coffee code in separate files in this directory and they'll automatically
+// be included in the compiled file accessible from http://example.com/assets/application.js
+// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
+// the compiled file.
+//
+;
diff --git a/public/assets/application.js.gz b/public/assets/application.js.gz
new file mode 100644
index 0000000000000000000000000000000000000000..981686a9c9f59e04a730afa48658451809ea804f
GIT binary patch
literal 244024
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%0Dv0#dECYAz4!A~y=T>*G<znpb
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
Q9vwdVKT}v6vGbn|019dc-~a#s

literal 0
HcmV?d00001

diff --git a/public/assets/autodiscover/bitbucket.png b/public/assets/autodiscover/bitbucket.png
new file mode 100644
index 0000000000000000000000000000000000000000..af1b012654ab66d75a7d81eaa8113b68d7ec55d1
GIT binary patch
literal 5189
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

literal 0
HcmV?d00001

diff --git a/public/assets/autodiscover/git_hub.png b/public/assets/autodiscover/git_hub.png
new file mode 100644
index 0000000000000000000000000000000000000000..9d8cbf404dcfa087c3862262cb9540a4ddbdb045
GIT binary patch
literal 3627
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

literal 0
HcmV?d00001

diff --git a/public/assets/background.png b/public/assets/background.png
new file mode 100644
index 0000000000000000000000000000000000000000..b13d3e7625bf775ab5277fee644e9ffedf207a28
GIT binary patch
literal 8715
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

literal 0
HcmV?d00001

diff --git a/public/assets/bitbucket_info_logo.png b/public/assets/bitbucket_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..3256b753373af1abc956e763c468f6389908b36a
GIT binary patch
literal 9922
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
AzyJUM

literal 0
HcmV?d00001

diff --git a/public/assets/close.png b/public/assets/close.png
new file mode 100644
index 0000000000000000000000000000000000000000..f1d1849e44c3a7f7adcb7250fccf1a57bad0459e
GIT binary patch
literal 2154
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

literal 0
HcmV?d00001

diff --git a/public/assets/coder_wall_info_logo.png b/public/assets/coder_wall_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..4d39424588f870e373c8a5a612ffb821eef73936
GIT binary patch
literal 5120
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

literal 0
HcmV?d00001

diff --git a/public/assets/css3buttons/icons.png b/public/assets/css3buttons/icons.png
new file mode 100644
index 0000000000000000000000000000000000000000..1c76039d948d1e884436b7c5f297cc3cafe99854
GIT binary patch
literal 3948
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
GLSTX(2v3Xv

literal 0
HcmV?d00001

diff --git a/public/assets/default_company.png b/public/assets/default_company.png
new file mode 100644
index 0000000000000000000000000000000000000000..b0ab09c1df5103809f1359756e3795a67ccfb9fc
GIT binary patch
literal 1702
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

literal 0
HcmV?d00001

diff --git a/public/assets/default_talk.png b/public/assets/default_talk.png
new file mode 100644
index 0000000000000000000000000000000000000000..956c6a017d7d6d6f5f3e711df6634a7a6fd34504
GIT binary patch
literal 4095
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

literal 0
HcmV?d00001

diff --git a/public/assets/experience.png b/public/assets/experience.png
new file mode 100644
index 0000000000000000000000000000000000000000..c00b3bb9adbee0a9e591e90478a9726427f37176
GIT binary patch
literal 1625
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
Xuxxq(Te|vr00000NkvXXu0mjfJjm-s

literal 0
HcmV?d00001

diff --git a/public/assets/git_hub_info_logo.png b/public/assets/git_hub_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..e0596e58777af8b7b0a8f8a68377406a024c7d01
GIT binary patch
literal 3234
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
UaC6qT3jhEB07*qoM6N<$f~+<tB>(^b

literal 0
HcmV?d00001

diff --git a/public/assets/homepage/home_services.png b/public/assets/homepage/home_services.png
new file mode 100644
index 0000000000000000000000000000000000000000..5f964709eb9ac0421a0696aa0cbbeadf04e210b0
GIT binary patch
literal 41038
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

literal 0
HcmV?d00001

diff --git a/public/assets/icons/codemav_icon.png b/public/assets/icons/codemav_icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..7f11449eae68229ec0f9956e19b4afc57e99e5b1
GIT binary patch
literal 4440
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

literal 0
HcmV?d00001

diff --git a/public/assets/icons/git_hub_icon.png b/public/assets/icons/git_hub_icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..2ce738a7b09fc4c4725e99261626379320afd816
GIT binary patch
literal 5551
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

literal 0
HcmV?d00001

diff --git a/public/assets/icons/github-logo.png b/public/assets/icons/github-logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..8075d5d0ace6add9fd868d5023ea3631467695ab
GIT binary patch
literal 47650
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%0AGh|zV5rrp@>P6BPHs{OOA}9@QPA1d
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

literal 0
HcmV?d00001

diff --git a/public/assets/icons/github_followers_icon.png b/public/assets/icons/github_followers_icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..35b74b6a863cff930dd5fe99b0f9458090058568
GIT binary patch
literal 1131
zcmV-x1eE)UP)<h;3K|Lk000e1NJLTq000yK000sQ1^@s6ThRUx00009a7bBm000XU
z000XU0RWnu7ytkS9Z5t%R5%f3Q*BIJWfVT|y|=d?x6qFj3X~SswWyWh+%%cEDNap{
zW@MU7`G|u=(e20L78YX+D)TGGKQsO@nThg4M>c;g5|lWEghY_75vNoGbqa&RSVv1Q
zgRZ^sdd^*oES}`tbKdv9&v~Eo@dD=@NIN?_g`971ZEfvtY;61#*8$YRcszdh)YR0y
z=og^|o0^(FX=!QcM&F6L84D8RWPE&_ksFCbDtmi-UszaJVBv81fXQS^B@&5J1d0U(
z1@Ww=nWK}FWkp3r9M66n3WXN)Si)}vqy-5cNSn>(B)X1?i3zX1`QOKucO^+$!OQ-K
z*V851D0<2r9UVulib5Ofs9H|f(2~+x_eD|Q4Gj&a37b=<$H^`7^)uDh)(#_x0%ijx
zP9E}=@bY3O_qZIqs@%=1eZ^dsL<-D<!QeH-S5l0DfdPqZo-(l^F{DzdLUKMkeuy1@
z=|#vSZ@_BeI&da{QI^5%@x#T@QTD`<w;-8P&CzH?2?Rn=S64@ufIuG<scUf1gw~v1
z<7!QX8xFtP48Qh_z>QfIY~`h3w<%!W;)dbwet2+u4YVD29MqeuX$)o{JYi8mnx39M
zgkw>Cm(gg5#bz@1@7S?&dGI@c^et{yENdEH7qlgnWmFX;!2(P+tb-_MtE*|*<tj?W
zu3l}Pnwc@6WUN+eQeccpq9|Tb6s0elT|0a3%vbG#qjc=l>93`#$3miayN5|wc8kFX
zvW3C!raEE#w=sEmA_i@3FP|#&dcVMKe~SUb7)QI^8RCl4)7N+3NO<&>_G9heH$UI7
zdz%%Waa!c9>D84&s*PlnHN1FcES8GaJiPDoH%}Ztrvo>Cs570p4lQy1^s$rg{<Z($
zvqQM=T1fM!6q|Dq&+A<$+j``+j|j6#Mf8RIOCyH*3(0|uXuW$LeWd?pChb!b$>nRa
zG0|?bFAIX8;RKZIdSF-2g$w=lR4T;MOzK07mIP<v_6BWI;9IECw?FvsIe&@gy<)p_
z$hF0lG#TY(tWVnEu*XGU6oeSknB=E~wn*-vPKWXXuBX&>{`~76Uxn%oRLy(+fqA#D
zGWBGA{UDwTAp=TPKeyTD2b-c3LmF_)*?8u}AEMmy!^otU`?eaGMX|~ScF^Xg;U9xz
z@6kV(ehMb}&wCQ-_jfu>LkMJefu8zCm%qUq58^u=RH3C;fv!1h#o{k<p1Lx>ZgphA
z?yrEq2QG74RkdIbnuNl8tg!7mOukVJJCVflNlgD8B(%XWlDnZwhLMYL7|Jl%YpiiG
zu((7)22inb&WGy2?gl6>1CZx<%CE35DHtkXusa#jCJLoZKTMa_VBe(~t#&rf{MtIW
x1qL$KD(NU>v;I={`+k$~BR*~9p-UbI{{n#87!4?Fy%qof002ovPDHLkV1f%^AUps7

literal 0
HcmV?d00001

diff --git a/public/assets/icons/logo_twitter_withbird_1000_allblue.png b/public/assets/icons/logo_twitter_withbird_1000_allblue.png
new file mode 100644
index 0000000000000000000000000000000000000000..9b62808576e02f3e827c3cdf1b672aec5d838385
GIT binary patch
literal 10421
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

literal 0
HcmV?d00001

diff --git a/public/assets/icons/twitter_logo.acorn b/public/assets/icons/twitter_logo.acorn
new file mode 100644
index 0000000000000000000000000000000000000000..d66a8e7fa71fd8329440663cb955d39e2cceb59d
GIT binary patch
literal 20480
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%0AEr;5#lr7sYt^dlXPMe@38lcR*WiN1C>i*-
zng^y#j5+Ql>eJH>Z>o*o)7BLy35p`q)+2fN)|iDn1f#DEqTjJrZ7?MBzteQ9%~s@u
zW$79$q_cJxCuWlBQ4$EBoL$2;1OOK2m_8>w_vImxbNx6-Y2zv|SavW-3Z~81H>1aq
z!H0bx^d^Iyz^#h#cyd4ccD0J>n;&EzFC#f)(Ei*#!)PT20boWir+R;irP&njh<jXA
zdylPxL30xM1NU;V{lKa+%F2&2+b-zL)`S?l@a-@qDI^@LB-7U55_scG*e=nHgFhl@
z<;LE*mHtDV5?^?9q(tFGy7t0K{t=oT!+t=2jSbecIww(1)ll4n&3>kG$c~fcArUsw
zuDKSynavzMskZ!ZUHZ#wp+vkV<k&Nu=9mPz1YLnqAW8J3)wh>yWV~h*%v!3puUA%I
z)Y*k}itUw;@3Lx~;sE!&OuDD-;9*8c8SQECJd#Hn$8TS`MhVLwQKZnoqV6RBkVo1Z
z(xW8jt*RWmP2Uw36&$-N|5~R*fKW3$=mA5-=?Qp`Q>ANZ*+@SllgUnY>$Bx3)Y4g`
zZ!~Y2R47Q!6Kr%6sRba<>GWbUZJ41K?M>*L)H5AcQL0Ntt)uBTEOPBng|!kfY4B>?
zRa+e+Xv0$neul(7F3(^XE6XW2+|AGX=?t|+(-9$#F9AoqfIY>#(?vdx{$p{{Kb(<=
z*7;|Pxb%C|@3RDajh_J)8t5^6+$1?$ih8gw@~Y6v1@03yKXokVw0=H3tYg4fH8GC@
zQb=oRyy;{Q`Y`AcD?`T@RY%_%Ryuor17L<1t*%z@$SrPYP?}8i+CB(&Qt&@im=yJl
zSrVriEl_uHCqCdMERZQQbseuh4W$|g@znP%Ba3Z=6|@<~X@!e~#E{TkCiTT$DLDtP
zp^2+hPt4p0xr&a&9pU-ADm@ABNqk~7q~ED=-;mA5yis2m?d14C&wz86WoQrf?9E<T
zv5hSi5p5Rs$}DGT89T)1W_@L+oEcq`I(!ex8g6Sn8oXZT4Kn56=3m{QA-AGWHVk_&
zul@1#CziMIITzr<yEC7oXm$=Pv6kk}%~MX-mRefjt!0=Bb8h;yIHS7=T7}c*P?0Az
z+)Q%goDT0CcVZFj4Yp_z%qHX0XYBw_m>;$J=hE(0Wz;j(xdEonF^#7&k?au7&G1*A
zKHIGypV2VopgK~oC@@+z$^omjc#nk%D{7piTbU4zi_|Xhh6+SiSjH=vT4l=|C943-
zOPUUqE?|J5ptr7k-T7|s`2;PSg=5ZgO~C}Idi#t8LzRt70?a5kka&zI<oKnKB>r1(
zb9#Sej9k0CJE7gJ7u`NNB3P=Y01aw|e)!YR*n<{)GR}r)9R9VVLyJkieAd)GXxgo1
ziD^Gva7`K`-9v9PzV;|8ey@wO)Fv9;sub?h)$)bgch?23b0uA}r4+Q)j(rTmrg23v
zIBwE{JBBz4%fELw9o~yO^SzyRG*Pk`dmLXGSM8r%+@GE!-sK-7@v!7(dGRSj_RDkg
z$r<{aLW)Or{yqs2McvmAx_1QR#S^MZ21J#Ga$);-wNK9O0)@VO=$uF#w>d&Xk6MEH
zv`rF`XxKOE<Hi`dn?@a7sh=KMwJ2kpwg}&(zD*Rk2JZGK%*@#7S%5X<$ya=@IeYhB
zkJQ*&F%Z)fD-LNJXSICx^!kR5^SYV2{(V3kk@7IzEs+Au&Kfpf_Uoi#h!sOEo00(D
z7=`v7Ql%RPVH9GI0ShAy!8-txFBjezBSl3+NJStHU2|>yEYrNO@%x;3@G~BALf47~
zUM5MSXYhK`@5lg>tUIn5bU~(L7W+fmb}Kd1Aml)GJQA{MH^6MsW*^TM#q_W>W<5f!
zXm4uvJfTg26JPEk(uFgD-fL`G?0AABgV!l1&HH^Y3zLc|86180nl0Ae`zKhX?;})W
z>%>}AG^2|Q$Ua-W`2Z|PgUO|LKoffHF$qk7_0A@E&6#QWj1rB0a(Y8iAGwe4Gn$Wo
zi!MfCuEqC!e2u1vbrYm9K^7~|2_^LctJ9>|4~GH8!CFj~aD7ASBCow#`|<iF+=En9
zBABTxPZcZ^%a8~+IO;r3Z@B8og38reX)r4X{8yikf4|rr9M>nVknAHVP^>qUniz$(
z(&@eHS|aB8%t<}^j_Ly|Duqn}|1+zM43Bxg;PaA8TaKm!eWiJUaI{gni)u=$1zF`P
zDWvPGmW-BxRm%{5Ng-ASoJxC<cM%*EY#H=e?v}P9Y#sWHA{xFVkgZ6|gJzb>7_Ao_
zm+*+v#nRYR1A+~|Rw#`3R?i@{dvMt~&%}?2LieZ_+d=UzRr(<rD441!8pPtWwmjJu
zRSe8J5%{B1$E0pdt8cZYcWj@CIs;bh8Cq4q*QBB7`_wDAk)e2PIL+cGj+AEm`UaI`
z<tK!D?lnv!dA7BF%O2i#zG-AIKRHi@#84Z6g~JJ$5udT_U|Y;1Puujr`Vyt6Vn7vx
zI^Ka5nQx9a{WC^3E9Zc(beRTymYLL(KZIjGiy2$^&^>76Z_IHkoc%#%fnbed1sv@y
zA}zw_dU55(*>qN?4q!2>CDC%6HkP<H^uO@g$mUS_j4+1G*-hY=AYkriTsMP^uDU;*
z6lm!E{NO5g?ZU2fU-nda>S_ba*Z)yCu{x>p%7f;lPeBH|!=O{OfZla5wBA)5e-cc4
zu?QT#IiJNd8l0L>H6$0=LU<u09Dy?|I4||HD;a17^uL1(y5|`?g5ivztvEJX646?;
z%V-vCGap!lX=xZUCk%Mty!NbJtr4m{DPJ6@Pc29<O^?f&xYD@hlX9AnKF5RoWPPK1
zC+0e~wum~YSkbcp2sxDlygI*LFEFMM?ouBu_nojP->+8-q_K(JsNJ3sBNHi_zi@;s
zr06l+e-m2^bh;;a^J1*E!yCn_Vw3#QU67=A%3{})Gn=%QB4tj7{4U#7Sdc#i7>6aA
zCN?j--@Tn&ag#JMGF+X!yJsYot?c`#D$g<?rQ<(PbP#yXc!!EzCpq>R@2JBdb+iHJ
z8_UROt%$0gBF)zOKt>Oe&yTns9@*D8QZ-v;m^SUPb7l;d+PaZF0f=jI#M0l_J%E-*
zXWcf3lFgYBPumtu_-)IflgZs-rc42Jxd-~!NTAXhP;rt_iRYx&&_P`gBXD%S|AJLi
z80pI;hW^xYl@x8*)FQBZ;3pD!=x7i5H}wO<J)yd}6=m!flRE<ELdi7tI@lFWl{EPB
zjthQx7Z^3_B7q81<0+q{UhnM2++YV+oTZHg)!tm!Ys?gX&^L>jx6H)V@Zv_hSFdS}
z?MSWM^MHA7)d|l_a){R$T08*RU?R`<zta8M06I8tjnA5$ts<t+?TD9%kncodY~g+R
z(S$Go73CBC8DT*`^}>3g`{6~jqxvz(FpGB#fhrP|%>O|`Fi4stP13Y2MIp5g_@$9}
zw5fi<x{;bDx-K%)ahmlchA3k*#4m7`gDs^rUd$WmOQafNCj4t!l^@fy^Tgn#u;`r=
zgw0pz9~5(pDGJ<2&7QX?6DR=q`boesA#TfIu(xsrAH82ADHsUQwhvJt!8UCrlI#>j
z=V?3hgmvDA9yp#JP2?zYy)Kxhuv4Ue?Tk2>r$2eNo^Wm?H&)BobVD6_r?-1S{e7&S
z2g7r%3$s{VgcUQHsAtby42C${^qFBEGN9!pIL{w{?Z+g=VMhplztgx*S8y9=>!NEU
zo=^MNJ`XLMQ{I!Y>da!F>@9Zb%r$hj2aNrh4a9B%j})sx^__+B6mI_KGYwjMZ~7bZ
zbNTibU2&EQw1W(cS9<h`rK}ZvlnN<fU1QK{Jz%mqnsQ&9mU*qbWrd->@~vguxt#=#
zc4}`AwxAD&+j>)K!G3zAU9}u5rmR>I#u#sV&7JFmUJ$?Y4NLGm(se8wx%YI?Zb9(5
zkz&ZlN%RLgZdjF3{~Kf~2D7DsNgvWJhPT4q&_82sDRX?6v&(B(#0!uOGB`etkE0`U
zN;yky)A#gB<=_c%Q(MYU?2VC(o65Id^SxKUXr8cQRg{El86|Wj^!*{8l8BK9U@FfO
z;=^6nf$_qwX-;90@uS$Xc9TmU+nH$}4PCF%-jd#>#I>QE0FobWw+tzgk`|CIXc<=x
z6_<w0_<FBsqRT&dcm=ga(uB2i&*FbNt_rB<8ei`37JOb8;r>y{(igw0`$+T(;-3`u
zIl-{^Nx-KqKkRhK<%ForeL-n6b00<2ky~R!BazN*xho@VuRaIVEZJVir$1Ob{KgIb
zT+=zn;PQ*PEQPz%^OY2qIsAf6H20>Mh1IPE%_*C`IttV0GD(eUMyhauAIiB~Y3|#O
z<)VA_kviFBuupIeHaO%GR7n}X`!`_!ELvuHk<LS~TiWkiLDc8+VJAXH8kHN(kV#^q
zFt(_|sx%8werIKUeeHPr=59Sv13@6;YaTX1UF_kBZ&zQ$Lif?cod2xNw#}-Xci$a7
zS!*=e8)203d~V0=^LFww_E}Xo%oR@}L93}kf+>Ue!eI71w`mf(pLU2Yi@*niEU$y+
zW)_Evc{o)UOgdU_k`ce5Pb|VHTL|eX<m1w;=q+8=KSeS=y*MG$ezn=|p^eqW|6r-Y
z@ic+`q)fM^f%h;wek^PjBPF0Lh*lAs-BWW1E+iQH$<f02R%GVOW-?Pgc6*--9+`k4
zDOg1C=sbk@4PR5{;y9jueKpgU3@<$iuVYsqJ(WWJCq9i0&)7Y_&xnm}-7Xg2wA=<r
z{jzuO-+0tVg!qUb$Z(N^%UL|byrw>)-|;fv+iyr^+5FU)=jt}S>h6n21l!j^Y&>pa
zXB8pBz(q+L&ODxv2urtu7Iv!fR>m+~asGBN$?0(=WdU%u$rp*=lyVWUDiw3tu~n0y
zyz*+_gazbpqA>Ny>K5W9)li<sjIydg0Fg`wcfg>6jK&O<H+U=imR1E8d5%UU9l3ZA
z%G1;lkv)KWyY>X|Q(i?-vFxk<74!ciXXe-WKNd8#5Ag@$JYx6n{J&q={4T!{_>I8-
z6$F0g|NYMY`<?&y|405GBRLnV&mZ}JFq#19=Xd#y!2clxN?%~Zk<HMVf$bc?&d~Qu
z|C{`?45%vhKl0Dyor+5U09=h<`DgCHgA9*2l4+M-<#w0aXijlDa%2;DSd@h42^N^_
z?9s3CY@>%n6DZ;t;E2sKBV$nE^eK7~A|<)&6L4gE&}IGEacd%QXdFX$4LJz{f-N{1
z#R(Y2=S+d(GVcjFhrB8T+K(>x(z6e&vpGq(V%xYLZZ8c+g?5&XGQAEDNLi3z<W=(n
z2F69-vLnd$%5ajSQ5nlSuv-6GV_TOfA;@*47#mM=LRadO>RG5s{!Cvx3a!b3i-pDf
zgmgf?zyR4P=ptNJ&4pbBrXCJ9@gsC8pZM{oc`lqSG6IbvEOh5|q$zLEG%%S>==bD@
zHC)KdB_G9O;5gcCQzw|ZNLH1-vHA4s6qem%dL(FD`Ci88g2Yv$3;oVjBFv8ZX*TAd
zesnr{QGsCf_GiID=~f;&$q{UT`u&ae)<H_Vw`7aP5XXa{K|Eu=9rrbHGTD$<rpU=e
z3txZq$Dnn=-n;1rM2vDzYNYqRq;TJjc0A3cq{r8G;l(W6R|`BoFPP5O>u%@aF=Rc|
zW>q>hbM2<bCf)a|(hQ@NP*FWYv*-4kc6R00^u(AA(zof>>pq*rxARoX;Oe}KmJ=M(
zQ>lopfGP9-QF7qgWHrRx`btP9*)+P@qkHpo$F}Xedf&*1CQeR*)-6GlwzJLd$qRw~
z%Y9oLdeTbqAFvGC#s>Y@nu86S#6mUsnh{mI>UxKa4GT&N9Y<zYZXP-rL^uaG>I1@!
ztrIIaYgD#%=kMx$I1i=k7aSk>7SprL&H{ZoU7i;v+j>YR3iSn-nP!Hq-xTH=gS(!n
z1vD49nG)Hv!w~}p0#G`pk1CHmemKY?%hgx4uGoju@V)gbJH%XN^t$-bQiteMkK1;n
zm})yUrC6`*T^w`hc$4qTu(-c8%;~js<aidMz5T(798%($mVCK5W7;eHFzn=|xP}|o
z^`7#H1pC1(zMJT?N&X|75Lzy7nTT5;)8>t49k{Wv>5EAjTL}|bn5EX#-_^cpW*hfX
z7eiDaDV-i|p(h_P)-RQB6j+X7BaAug5;n+%=?I=~;maiVuV=oqsYj2y(QXmj^Nijn
z_Gq@kntsxz?&H}oVHJ?`nMo1)s>wmSO8>!*C)5RzTu{OeG9VzuF!nKJoRIwNHKc%Q
zhrBY~h_(I8YUC;82mdav9U?>tcbrCiyX0$1NnLwDo$k`-7O|3VKWLoV(v~5mA3>*6
znXT(zzC6uVI-EIi!!v)}NDl5a*g$d^dF8^lqS|vTd{^7YcqI3F=N6~Tuo&lB69AE;
z-LpK(G&55t63Eu&P7b>75MFHWYq~f5uCQ39kX0_df)8Bw2}T<tOF%8-EowFOAbbXB
zqT=WxN|*2`9R`d5JhQz<P0M_K5V{gWNF!SET5d%bDf>~;IY&qR<xvNP_FnzOzdHD6
zDjNlIXrxS;nCXjf8yqTSWIUCGiD1Owm%zgM5YCWEQOiBWQ`<&iSLkmwsb_?0_PW;{
z58g<*3$24CCizi9FGxuLaE?VD@AKf*WG26SM9!_UuBV+A(%k0-U<h8;7NQ_VuQetk
zb&<T;34ZEVLWyVOc4*d9MTN2$^wE!{5x8kD2{+60A1AX?zFb-?Ml9`^J&$GW)E86}
zxgz%0)%scQ;{M(5<l_QbGydXYKCJ(Y7U^<KN+0hX@NiN~xypuqKD=Q}yA?OTvZt<O
zqv&TETHc1-tH4K8fOnF6FO!y84AYhxB6HYz!+LZniCrkb)qVchGDbEX&sjNF)AvHN
z)Z=YkNLz$w{Y7)QEZ&`uri@}0qv0O4yRd}MrfgzEItZ5UDf+|No<e5yki=;1sx>~$
z%2RlQmT<NA)~^=;e!c#O602i>p<=2aF~ViRFluJH(nlG}LwNFIFmHG0bPd%74dGkX
znuU@EiY%+bqmg)OzEG?VorqDj+T7t@^}(?ZUazMJ!|>MvdBG?;FFTjH8LWXvt~67v
zBYpD<B#c1=x9jQUw`jad$OXEmODC@ILVFPj9yT@A=6G>3=7gV&x!B(!&WRWxxzf?x
z(0&~+ADF*Mc~xm47zmqt$*g|ib8$o;&HYIfq0hb2sfJ6qX%Z_3A=jtFwGxpzvbT(w
zTL%dCBYLkqvt%1@jEjP~Z&XR*4WBo740}B+737K@dXb~!Uf0_9sl0B&gO26fU0$S-
zW%Wr{jEDPxsNDdHuGZ8&dY#NsnYw2}&6#@=VFzN>qGqB5YM<IZ;rCp}apHPOlb{gE
z_m;N{2MyJ6n<l}AtRZrPq7AvpaO|jMK$|I;x<CPG;<vt7EDc5_H5Y6dib(C*+r-9C
zq&+TC^fa;ohs6&uRV@7aQg@~9#X_4Q<(AR3fHMjzM?QB~4L0EMQT-lc?=5~k{N>J8
zAQwfh-kVFBk*duA1v$~cQg&G49IAaSq_<)?rdw49_S|;?2vyp&R(0zv<YcNhbk{`y
z0W?zcGJbR6Zw<YMNn$l^YN!ty*ZOe7^K1I3!wR=l#i>>zlk8R)rnUvyw6_KUe)Kfq
zY?1>o82bQUpgYkTdFV{sRs2UxFIM5@(Aq1T4XeZp?swY2kg>@}B`q=c$s&4j<9ntF
z;GzuriR56~IaOL$G9V}bOAkq;U8r)&cQ`oLr9)VS3^SMt{Zvx#VDKX31CAj>P(4{d
zS!YJJB%faYPc5qet2AT{0jY<TXZqXFQ3@$I&?eyNY(}-hL|HyEQI(h%GbQ-m?<8Nb
zK+`Ky3rQSdR9gS$P&*>8jK(IX2LrpnlGEFSU;R0uUF9WJBN0nJE(gm|o!=3-!8xEk
zG~6LE3TdE?Ff0Zy&X3nle)C-eg;(MwVVMZI`9fIHQG=e&dj3794odRe8Wl57AZ_Qx
z&~R&$TjTO3Wj-9E%KEPRFmvz~i*qL*@cq<)U>yx_+`zlHE1K~WM|vZq?eWaJLh#{F
zfxV4`xHR+{j^&ABiU^4S#RcjOGs}MdnDD5WO+$8J2~xb8oFt5rE=`&r1YcE)%mz}K
zJqABg#N(P@U@i^-JInJvaj2>5cJvaJ!NQa1t(Z|Kv4#eW#Jsd|V||v;jS!JVPYLKl
zdQJXPE4zMLH&SutYa1`dz1fc@;L5opkCy8}6hRj;%{YVZ2~E<KqZDrS&#&F9_f+}4
z;Tk#|>uSdvdGqE<S|})wkpy33`I7ai?xRz+DJN+t%sw4jK2|2Pe%y4L+P7CSHX7HY
zfxRlt9oOsdphXb?HoorAdJCc9l*^7nKCxNOJT$lIeBN;7x4LZxw^}F?;X!JBIvhdM
zi!GhT>-wEX>T>Qj{5BOWc7d8Jkam~~V!DnZjfe}U(jli|Nb60XBt;+*eu`4<fJ0q3
zH`MoIq}4ef53h3q8#ps~R*Oge&EGI)9lCI;d>xWCVcU+2BSn{wJ!x>K@&vOzV>R=h
zqNcD?zu=%Wx^U0Za)&n*esh~*#lOy~{Q#Tb-XIn;({RDej8&r}BMS2c4C!^+co?4m
zZtUoU*5{;5efvZ2;rdI+yu|xhOnnXB!I|XMwImoqf)-VczJlH!4nO!lXLIlu;YUZR
z!o}#qt35&HytiI)`pYw4r|>U|+gf2rc+DwaL-6z-=%<Jdu6kQvMaj*m*1h?ueXFjg
zF`)b5Jko^+V}4e}^BGl9$=FL?1uypM5EE0sIQ=|-+Ql3@vKC4Gf(Fym#5XvcSg~_;
zdMR_IblwYMp@n8tm0T;lOv#2diux`3rAz_T%oHf$a3O2YVck=P>aW(z%OC9OQMYm=
zSBHYV35{h@wyqt@Wj51z$mW-{U1>s2#U#v!t?%NAm)~QaQWX{NR|(t->^HxkT?T0=
z;lEQuEz;_h?zS==8di)8@%O94lCbp0v^BjY>E9~-PM9-b=E+>_%!>&}!QAI@UPR|%
zH*Ty*4Nr=DpynP`_Fm`~-o@l(!G!kKI?H<fpiD#S`|7+Z53K;Cn>$n{I3XcBEDr<Q
zw9g3>nU2<~x|hOgnTc33oH0v-J|uHn?z$zzgX2?L(|kSITolTYEv<oA!3aV{l)G?A
zeE&-K9HhR3H>XDIgckWEbyf)e^vAcE=Uj_nZ;T7-X?vaM*vm*OkAP39<F2A-k;EwT
z{PK%Rbx*i4?08|3-_u<Q8Wx56uXo0eJwio94*;Li-b$*i*gJ+<Mpq`V%q=j<AAn-X
zmFd1YzN9ym&Eu;V`<!NUB6^{mL*h&o4w9M=tX&7S^gHyfTAjG6<apAGi~Z26^_$2f
zm?RjO8AY}^$@h62kfM6MGACIvvyoMKEe>|_DJ>jGo-VL|5vg+C(qbx}5WUR@qKh!}
zZ^7#?B<6q2(@#KjdnHN$L7b_k1&^QwFe&kccfqg=8&~9CE1So5{78UtRt+wDk7Fg7
zz(GquU5;<^eDA9-zs*pt5D#gOp3flgbRzCS=5?ic5U%A|{ih5%98Kvme8#P$UD0_y
z=9XiJv<K2qOu7hJK_(3(IoHRPj%<2j=9g3g8EKFL_q@GznO)<wAU>2P&5hn5*hVsl
z_$CNuq-E^Ld+;4@9DdnCI=enLN9`-gL^`JFYl^iuLP4h#MlJ85@gMN50A&Yh2681%
zHIj&d^cYX8Id7P09on1zQX<Z|m5x%S*7%jY8eje`Wx?7#`(yE**&0lAZilCze&$H{
zX_c(;Lnfu5M6~AOtmoGOByLw7DVrU=&;wNaRfM@HrO)pY8f%)j-`i3|J;Ay?%)a(2
z6NF{I98o~Zs=^Q39%hidL6Oy7xvbt9{%Y2Fj&hZ-wYa~i?1Y1b8hWf_`N~wSbE+iZ
znTyC09BCFhYnF1Kth$_PL&?E%?RY5CSJ^;%$yX7duxi*BBf^-SmNghXBNco0?DgvB
zne7-BRy1rK3%WFYsz;7>Qr;a{AFhN*d=;ef!Y7%n?7d6|-L02|*S+Ij{FZ!-aQ}>1
zl_szvL4RxQ$iyi$V|+t_@XK)t;03mU_-$V#=uUQWi1+*><4_~<GM3=M_pr)6#<l!G
z`bFt^$Y(FA{OY*O!lkMaW^$f8Mx^GrtBGJY*@D*+t}7G^)bGZml#JXkAYbl+SVQqJ
zO7$AvBs~gU&L^7a!%ER72_1|@BJRhQ%_B^_kwGZOirr}LI10RRX=T{QT+mDRGQ@o{
z@eS@siGvXe@b?R@<Yz1C3096+MTS`#)E+Zgaqaa|+144JWs{BmVGE|)f73Ac{Vvav
zlyIT(y~Kza99!@48@wB`6{9Ys+U%Ae?H;~O9&_C2@b~!(#%B?pa-lI);8zeK6%<>1
z)_6356<6n$R#cORq{cC^v6GD`zRm_Dkg}as{Sm%v%&OBQxM}cE%H(Zn?mm?&O@(Uu
zu7ccxE;NV0mZW}jQ)#b;lV$fOX>3eQ^Ad4bkz2Zp#2D)H%&ct&(nURwl!>C~HTcXc
zW!j827<R8&&xH50$$2o})5JV9lD>(rI+_nVPw~gL@!h1)ps+mA1m82>&n_s@*=tEp
zU{;<va~vchIaaMK(_uywm5d(A9jD-YT+Bhz4E$)cK|emzGrBsS(r3}LL;a(SfTc02
z)t<u=V#ktC-a$}8{DUahL)h}JF~82e%ph2`t^N%KYxN7v@W|cq6=wLpj?sX3!3~7<
zoTvxD7`3*fPKK!pQ{I}jJ>h6uk;qlO(y65ha9mUsY0`zTqNI*XMwVw^RDFmv{`?C*
zC(Lc{s76|H0Dg&7>8q4O->x;hWA)x6v%5yJ?2j**1_lMXc_#;S9i8A~g|9g7<Cz$2
zRTdLx1_Sr{Qtk^3E)lvjm0fRHQ4-kAQJb_&RO)tvI~CKSzZ10h@~tAAvt1Fff3Glh
zeEE5}s$6bbT$L)dbw4jylj4n&lu<VkZixde%(JEB633-m7?GZ)aQ~)P^vz1-<YU+o
zZ((Tqv=hmy4Wmua@g>kT39FuE46GQgqppUl^4D@p*ZPIdsIh(@S`&lxe@eoi&O{B1
z>vS>jA(HNHUOQ2+=VsXwA3o<05{%qNh)(wEJqe8O=_x2LxPN~auh5Ri{n3p)EiTCU
zz8NpNGItS+mr$^SXwc5piQ)tJIcfd_{~6!C@pxnj-yW*Yh=B#Qx9q6&s{}tTo@JE&
z?Nr|BBl6jz_4e^uF49K91eFw8vyLwAb;T^Y9UYJK1hQyx4Sbop$Sa&L=GKyP%E~Y5
z55&8dDo)qCKv;}C0r29rYcJ+tBKPGFVW>T)>_4>(JT7$9OXTztqgHn8vdgt+RRqmd
z+`*MR*TEQ$wE|P>fgQXArR~a#b244_Up9jgw@s`@O9OfGbjA>Dx<xgXj?n0H_Db$}
z_pqDPbo)GldD<MUB-h)m2x|Jc;`dI+jNyzv%8J92C^BzY>7{Ew(9^P}r{(KZV98#d
z(XXlhm=)QAp<Cp`e=<E8Bx<N8$&!6K?Y%nN)Q&3OIrGnW#<B0bwktWajVk0ANJ$t_
z9fsnGB5Qhab{3>4r5C90w;fGh;}bz@w1h9`86Vg32DN@J<ob*+xc^Ebvp%XDo#e*d
z+?K`Uv)1v}@K{fp5+<q?gXcbvEU8EcmtP#8sgdj!V6Z9ctOc7fdj{b!s_GmR%@t(B
zQf114&-FApWk2?HE10b8d<zY-1ZPX>K1*5aB^X_l&bDlwiHO;bv686b1naJG-ZkaN
zx)bFo>nDR%esWsw`tk~ZUr;$kfK`rFnLom8PgSwcH|>h#=ca{~joU=nOyJGnF)Bxi
zt0<R0_cFYJGwHzjF&s&ehy51u8&ga{z0v?%l>f^QO3w6#V)9LPx@M<7{nP}tjdsc7
z=;6Dk8j#zU%v(3e@JqUHvz6$n>R77BQ`a7pfR>;SSGTGhaA?HH*SP~_$kZ>thdYPp
zIk0mJ(K1}@d4*V-?7^oKy_CI^T({Wyl$E8`t|VlOl0!h{A%}0oNAm9Q_U19HDCm}!
z4F)6eLvdZ-Ld2*Rt1I&x`&Yf?aJqakrP*rrJ5;ZJM5OQHB~_84p4NX|zC6gXY%X;q
zjQhwdR4imY;M?(uyA5sA(U6R<#6aZpm4pu#x_AE-TJX*J)X%-m$|x4g8Y9`#a^WXO
z+lS2Ci+kM;_^{h!RcA@(+jz?ui;?1^vuljH&qiZiH#>Q24_~r%(m}JMmzL{$iwP0C
z7Z3eT=wyqA{fM6$&i3t&qKwvqzD2fC<Y^XHsF4-@>{=O9Q$BIN7~UAXRG!Ixj!9FO
z^mOFiN1aPo#FGBAKxN0@CwSaV;3neG4$|tw=k-LQ1A}|h)WkHKWp6!S)m8U|v31@C
Q_pLVY*PFlp`2YWZ0VN`NZ2$lO

literal 0
HcmV?d00001

diff --git a/public/assets/icons/twitter_logo.png b/public/assets/icons/twitter_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..9fa60ed1ccf8ee30666e735f005d2fc9e69ffd1d
GIT binary patch
literal 3566
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

literal 0
HcmV?d00001

diff --git a/public/assets/linkedin_info_logo.png b/public/assets/linkedin_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..da044489b9a0be8de62c9f4788923b73e46f0f3b
GIT binary patch
literal 4730
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
IM6N<$f*Xx2Y5)KL

literal 0
HcmV?d00001

diff --git a/public/assets/location_pin.png b/public/assets/location_pin.png
new file mode 100644
index 0000000000000000000000000000000000000000..5f9819bc6664966d38d445f17fe8ccda1b82633c
GIT binary patch
literal 444
zcmV;t0Ym<YP)<h;3K|Lk000e1NJLTq000jF000vR1^@s6Pr_HK0004lNkl<ZILnok
zv5ta35Qcpm3k#u8V~iLrEVTCxd;(&Ojl{yv2e7lX(byXZls<(KdJt4JG5PQQP1rjQ
z<s!*s*_rufW@i=(VHo23DSRr|>ou(if&iZ9VK$qg)9IjCETYk9U^E)NOdwyPD1vR<
zXti1>m&>SBDyY?JVpS9c^?DtqX~Oq?q+o)s>k5$0%(mHV@O(b8Ua!TTdImTik6Cy!
znFt3>(}Y|u7m<ZF?isjRtztYLBaUN8n1}CnyJ$9>Xt&!U!)mp{`FzH5xfGeHr=5O}
z$KwZP$7x`6I?-8GRg_94u_i%j=R2#BFuOb)4kes8G05+rT<OP3CCu~fc01|xPH5k5
zx9KzU3@l|Z805mVv&!URrRID%9NuQ9-f<iOXD&(7xaoA73BbLs>$2RJFy(YQq1WrB
z;C{a^uI>GPe+_e{Tp4}8-={ikS(cn_Ze|KI%;$3fE*6VSxw&vsiD4MH-EMC`*<6?v
mBp2c%_&?!fKKgU~)qMdy?+0U9!zn@l0000<MNUMnLSTX_WyxRw

literal 0
HcmV?d00001

diff --git a/public/assets/main_code_mav_icon.png b/public/assets/main_code_mav_icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..961370419853467732793826b51a3f42fc806ec6
GIT binary patch
literal 10904
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

literal 0
HcmV?d00001

diff --git a/public/assets/main_code_mav_logo.png b/public/assets/main_code_mav_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..046b4d3adb924aeca07f6fb7b0fe1bc6b2d80a11
GIT binary patch
literal 6278
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

literal 0
HcmV?d00001

diff --git a/public/assets/overlay/close.png b/public/assets/overlay/close.png
new file mode 100644
index 0000000000000000000000000000000000000000..f1d1849e44c3a7f7adcb7250fccf1a57bad0459e
GIT binary patch
literal 2154
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

literal 0
HcmV?d00001

diff --git a/public/assets/overlay/white.png b/public/assets/overlay/white.png
new file mode 100644
index 0000000000000000000000000000000000000000..bcba9c6f679ad1ac19435b681088fa3d60b41591
GIT binary patch
literal 4233
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
MciH1y=M;YG-z+yT-T(jq

literal 0
HcmV?d00001

diff --git a/public/assets/silver_badge.png b/public/assets/silver_badge.png
new file mode 100644
index 0000000000000000000000000000000000000000..7c1362073b3e1f069bad8c0ac0f6b54a47d157a2
GIT binary patch
literal 862
zcmV-k1EKthP)<h;3K|Lk000e1NJLTq001oj001Zm1^@s6YS(iq0009eNkl<ZSi{ws
zJ!>*S5Xb#iLK^)5h7b^&SV$U4lTNI}!X~|fU}s^G#!ir=3pQfoD@IX4@jV*f8ehP9
z_%B>o&%5*1yFB59f#q&@=6AERGrOyeEcmk-8GJk*X|vhTWHO;{w@b}tlWMgZl}aTh
zXyX~)p%40E%%4DSw_66$YPG0XED8z6U@Ua}7wE&`zzlwVehS0N1v;P$I)4p%y<StN
z(^2&vLZIL8(`YneFc7ry4DZxt1v;VIbm;kfPW5{I#8|mpW-!y~R7fxeV|iWB4I8FG
ze|>#XwOT#%jwq~L<g*4Fuw@t;U(W->L%m+lFt8-h#d{sL^myE+6~lZ;Kq2DOEMQ5X
zlXnbkUW##>T9)9a58n6<U>=<JIBaWW6-8*Qd_LYpLn52a(%ajcaH#M$!Jr!&NuSTd
zqKj@k9@E3a0~55bU7TQ0D?m0aFJsC?r#h8Nk=<@*^7{HJJf05|HE-MGdkMY>h~{BT
zvCHN9fks<&Ex;yUw3PNLC(zi?@Np&TrD!zz11w2A9v9ZbGk{4Gnhy<prHCP<DyP$V
z290O!c3VgnKif(nastgyjaF!2%0E6nD49%BC=?>E*Lw!b%gxOV>k|%#*_d1|N5kPz
zSBRjk35~t4)LAVSBaw(EpoqM@yr?=w;sBE-G&b#0XYA0F6r#*NK0X=-_WS*`SS%E6
zz_!EzCQWFZHuzXlQix3rz>$Zq1@`%T3>dnUZ18IfOopK)aJ+ZB-NL{gkB5y{0~UtX
z6CRSxW-}TL26TISs~h<4?vCljSS{T`;h|?C%E8m=v~K83CUX&3cp>UddA!78G2PIK
zL_)YKUQBt{6c^-az0gRPrWcoM$~aP&Ug+oNXY<SWH5;b;`}?zW_Wu6P1Z{cdFnz-$
zx;4dq86_G(Pft%&C=}R<W3^f_K|7z%vv=s@a5&80nu;C*DwPTagF%*-_WQkJg<CF{
z>>c_B0s(3?8s;AYM2=gij8Odj{e97c_@Lcxr<(E%9k(odu(jkBf@LpjEPE|x*$YU^
oUiDh`Qr)tDUs(E&qQCzA1CdxHs4&QnHvj+t07*qoM6N<$g8iA0f&c&j

literal 0
HcmV?d00001

diff --git a/public/assets/slide_share_info_logo.png b/public/assets/slide_share_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..99ec01d0f7d00bab938278b9c241a8e01920784b
GIT binary patch
literal 11087
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
V`^0QC=Mn$_002ovPDHLkV1n40de;B|

literal 0
HcmV?d00001

diff --git a/public/assets/speaker_rate_find_id.png b/public/assets/speaker_rate_find_id.png
new file mode 100644
index 0000000000000000000000000000000000000000..ebbf01be002454f6b12c6555c2d2de885513d06f
GIT binary patch
literal 10813
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
azjPHKdK_f-bAf3UKt@7QyjIls*Z%=2$mB5q

literal 0
HcmV?d00001

diff --git a/public/assets/speaker_rate_info_logo.png b/public/assets/speaker_rate_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..8785067e0ee5dd3caaf974e4793827f3ae8a25f7
GIT binary patch
literal 8355
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

literal 0
HcmV?d00001

diff --git a/public/assets/stack_over_flow_info_logo.png b/public/assets/stack_over_flow_info_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..c61c043eafb9a054bee0d5953200c7623302c1b8
GIT binary patch
literal 2397
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
P00000NkvXXu0mjfv~OW^

literal 0
HcmV?d00001

diff --git a/public/assets/stack_overflow_find_id.png b/public/assets/stack_overflow_find_id.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6643514449a72ee025d4c1ca4b654e73982f092
GIT binary patch
literal 12188
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

literal 0
HcmV?d00001

diff --git a/public/assets/stack_overflow_points_icon.png b/public/assets/stack_overflow_points_icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..73ba9ae0b65277bae22e13f7fe864a817315081d
GIT binary patch
literal 1063
zcmV+?1laqDP)<h;3K|Lk000e1NJLTq000~S001Be1^@s60ks%H000B-Nkl<ZNXNaG
zOKcle6oyBzWyc-~l`R61MI|;xY*<tXHI-lmRER(q1!_BXjN>@A6SXC6OcMgFs*<!O
zwrSePRno+X?IbvUHTBrB{EBDB@7NtX4@FsI{c~s1L|CLDe&EGf%(-*Vcg}y$xnom%
zdwbZ~*}=xfMoWwmfUSaw!0qkr)&e&-H(LvAN}y5!>y9DhOdTjQ^#2bm=NY7WUI+Uf
zg;H?3$-rU?rI3+Sm8tTl2j2(#HHGzsTTKL(i^%=i4pt!q)>o}%jbDMiK%wwZ+C*Tb
zjKZ8k1akcp_@wJ_tuS{3%oh}Lx6fmPFEvrpQWhEG2Vf->GQYQp&w{@gcnr3KLh9Pv
zs1(>nfR%qY39}6D3ME#Wx5@T>TnL<;RNh4$+o{I_D-|9gs}!NfGVleiYOSzr*q2sM
zq>arGxhqKZodSFD<(-;HB#sB>lU~^MuVI>GzV!2ZNP0$5CNp=ip0k_<dznJ^_M4=8
zIb`pADxPCu_WF_WqS5H_z;ZDM#%qN8w+}I+q+nA~@Q$`49h!PEe^I0iuY&CqAU_~)
zRe|}E$oxotbi8u;WKF}9!Hzfv;JEq*rbzI4-7BCczeh3868TJENiwNHB4v06CDJ_Q
z)asFOglqJrz+#ROO*orFUnY!a6BjYBr9`k};4MU*1{7R_1hP{9UCNi%;V?;I{pB2%
zt^J62CXh+4;5qS&XB&0m>HYI~LYl@kat3@c-`M3{%yXC>`xd6YHjHcDfl1efM~1Vo
z-TMaKscVSSHsqKfVhh8_M4XL%Ez;@zJMwuk4KC&e?Ys-8S%S%%AH&>#8h`Y@3$y+-
zCP@PR*_)^cits!cp-SyQlgWZeBucu87dxtICi!(RVFzgY2o^0Q0mDaFb&en$iNkDp
zfOtGnJ5VZ9fTn{8`4{lumJZXVVa!k7#nKZC{EO4Xzl8WI4JJw>8nBa@%p=J#xO7PZ
zx7%Aguv7jc{5~HX)=^x&{0V-Np2L8wU9{_+?YN=%3`5<Y<5yh=?i-X?i$xG13CcRV
z;Pv|Is8A}$%E~ijxiwOO3jwzc9{U6qtYet5jKF$t01xl<VSGpq^RNO;A_9-c2f0F3
zA5bEZi<0tunViWQ){@K%V~KPu7$yZKnM5oSMl4J&YmS3g01{>D0?Oq|vBF?5gzoNM
z^z>*CO`{P^2TiXYT5UhHx+_>*{0lyxABuV_JlGfr&`_(Zf&VnMS}P{xaxFIw6waiU
zK^7Eg2sk!o#N3?y#AY;(i~EF1YX+)R8Yq=&(Ym_2|I-fM754f4PfrHi+S+REFYn#m
h-PQtyziO?7{tY5=FO;Wm#6JK4002ovPDHLkV1l-w@)ZC8

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/bitbucket_logo.png b/public/assets/syncable/bitbucket_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..ef8f78e904ccdfc14963c3c88e255b0a2b15a1b2
GIT binary patch
literal 9037
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

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/coder_wall_logo.png b/public/assets/syncable/coder_wall_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..604d87db393473e526861b02eb6057bc677c0c96
GIT binary patch
literal 5369
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
X87+>nc-okU00000NkvXXu0mjf@GMV_

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/git_hub_logo.png b/public/assets/syncable/git_hub_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..1e6acec7efe444e362002c68a77d904cd2102235
GIT binary patch
literal 4481
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
T1&l>t00000NkvXXu0mjfvumgF

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/linkedin_logo.png b/public/assets/syncable/linkedin_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..8ad6ff4a1e2c5b98104267e8df2eb25bcdfaec4e
GIT binary patch
literal 3678
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

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/mini_speaker_rate_logo.png b/public/assets/syncable/mini_speaker_rate_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..f12ef80ccd15f0510b811076e691a193ffc30500
GIT binary patch
literal 4559
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

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/mini_stack_overflow_logo.png b/public/assets/syncable/mini_stack_overflow_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..5076b58fe83407bf517f5e86ebdeb3fea5246365
GIT binary patch
literal 1187
zcmV;U1YG-xP)<h;3K|Lk000e1NJLTq000~S001Be1^@s60ks%H00009a7bBm000XU
z000XU0RWnu7ytkSRY^oaR7ef&mS0R;RUF5^=ib{tV8KpSsK8)A14zo|gea1+smmUW
z(H9?lF!8|$6P3j1j1NBeuqR*UgIRR(We*y%#B7lm_k_kQfMkr;{ozkb*GgG|w*1}N
z(o0*8zuVfI-a<>!g(q)va(?G`&-s1M?|aXm%Q)va$VWIxn8NxWShC^|hQ8)=1Ml&m
zd!p!~kV=kNq+`(U=JJj6*j`_OuKkT7J^#fw3<vJ>1?TrXyx>zascC3s%-jZSf}jr`
zFEBRz8KPI-fjskrCa_>>2a*6^oz?jB8~a|Rg4vdi5&z>0EV*u|S&G#i;M<hp%3MA}
z)804G*!eyr`%B;}q~ORW2rvAVh6+_SFassI?nY>SR-K53MvZ*~Ewx8k`3vX4EEL=|
zfz3M?(=jD;1DKg4UAqgu`7ocOw)X@&e>%sVgP-!Hd5=2ln$|vMIQdmN$kzA;EKOeL
zHMSFsRkna{0IA5L3dl94r>A*Qpx-shm+yXuz{my6Tzw0!k;^LdNZ-dyf8sS-BtU$)
zAK`$9i#1)~F#-l>ayhD<N~MZR+R)a^8qa(KbJHt`1s(8Re;1>d-{fBB&uOr+_e%&3
zA`%`S;v}tLp#{ZA)>ue|<QjInov~7GizV9FVfP?{w=QCH#ScS;fGT@Gtlj-!%j1at
z_%^|SvNOK`i3G$$ji_mPme4z&g22F>JDo*cW2-ta;JeKiZe7CK)FsFf0#w^zeeMH1
zspHVsog~QfYTuoxjHe)QXy6==tol$@-vzU!6{f?DXlly@^xylHFFL-(^5j)iG@Qn%
z4}aeil%0T-HFE2K-@_AIQN-5$h=#qG7bTL>3fEX2uY9T*=Gx=1_IwUg{b`h2I&z2Z
zY46C;>-F*G<|ein@bc*T0ydUhSPxBNBjh0&Lr5iLh@t@o(_z%MpGD8BAC;V)G8+wW
zVBiYx?6iZ*u0h<lhxntA3lCTBV{LH?&BtB`t9}_%llO4^SSLC<p4oL=ZrU12Cmc?+
zwY9=I_8Xu5a~S27hoCo>LvMHj#&Q!3WhRtadQkCn4=lD-*t^d%m)p%pN5*iZzCJf@
zL0bb91lm(uG9tk_cwG(%f&j)clU6Dw=%CZ-A?b}URa8MLv+_th0fSLbefLZ*JqZnP
zJC%e$3&duB5!U(^#N#o@n~xwzqhv?1CC8AY3CVO;3T&GofE<^p77J#S|3U*){uo73
z#8F#2o0<YQ(FQlAM=;7%IYfxSlcYkN?jZu|%E(6>av#5%8lWVJP|iDt!^y8*8`Q{@
zQC6W6mJyiBslHwqjRsZr{A_k>Yk-V`B$Fg-`rB!{XObWZ$Vk#ns~m}<SoG}I2Kc9?
z0V+NvaCdhXqq6IOeCN%Z<LM(X-(RS`12{YDK_n6>IY=m!xf!ynxezGp*8n9+g3IMj
zmr`z#EJPWXwX=Z>)tZy0P^ZV~-~U(tkMsiv{te^rrL5s%u5ADS002ovPDHLkV1m%#
BIBfs`

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/slide_share_logo.png b/public/assets/syncable/slide_share_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..bd113d5b53d727cf2693aa517ac10e6cecd26014
GIT binary patch
literal 10920
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
KMNUMnLSTY;K{vGk

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/speaker_rate_logo.png b/public/assets/syncable/speaker_rate_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..d0883b6c50a89700697de95a59e795bc5fa44525
GIT binary patch
literal 8621
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

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/stack_over_flow_logo.png b/public/assets/syncable/stack_over_flow_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..2408bf19fd55e7eb407d1ebdc588d008f8158e9f
GIT binary patch
literal 2976
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
W7Hb23Lun@f0000<MNUMnLSTYmRi~T)

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/stack_overflow_logo.png b/public/assets/syncable/stack_overflow_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..2408bf19fd55e7eb407d1ebdc588d008f8158e9f
GIT binary patch
literal 2976
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
W7Hb23Lun@f0000<MNUMnLSTYmRi~T)

literal 0
HcmV?d00001

diff --git a/public/assets/syncable/twitter_logo.png b/public/assets/syncable/twitter_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..d14468f8e200333c8b3258350a684f2898c1223f
GIT binary patch
literal 4873
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

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/code_selected.png b/public/assets/tabs/code_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..053c5f4c2619a0391fe42547c4d36c6c86a16fae
GIT binary patch
literal 751
zcmV<L0ucR)P)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQp-DtRR7efwQ%!3VQ4~FIX7V-3B$G5^indxxRixE|R$RCj6$_R~
z7j|J0y3vKdz>V0o6x_IRBZ5^@D^zgfrXrMDT2Zk96}6yNY(AUM$;^0PqS0n%Knh)m
zmx1@@zI)F-@4S1NNro*lVT*9<u>S#gVsRDySLeXjzcoi$id7wD&1mA>c$S4OZ^y0Y
zxu%bAH2rtXh6DOxcHNRG)o^^`1!|OcsyB?~H66)Z0D?CFy`0CsU;*8#fG5c;JR&f2
z=>Qb3)QSzO=VyrKjY4N`Ja|_F6J-cK0vFwYk0F^Cu$<9oAA@F8h$6E9bB8Us>XUG~
zPsPLc1V+XvnK4q3R$hR~Dt?W}*&YoFr*C79ntw<UBQik{(Gvlt;u01{U6?#0Vz=7x
z118>lE7`y{To%oFH%!c~A<ZHrMTnwIB;sz|UCiS4d<r8+A{gomVR))aXADL$gOHKJ
z#ba$4J{;Rn$in>kY#M2V>yO7-`-LjHR0)Zfc?cdE)34XDr%i&#tk!QO_!MM?2zWQO
zngx7(a2NLO2sR#%qVpw<u3o`~qY(s@AkGhjvGlo&l2&WJL2pM8<Aa^8*!Hc+qsAT;
zvG7%bUMXOwXC2p0Y{S8JFXmQCxbpZrR%;4Gw~Rxv8g8DHEx_Di+b#T{Q`RtVP?xwo
zSSe~4x$_04&fC&OlKDv@4-7*`w?ZxHU=~?;T$!e4`W2r<lXR5`j9B`^kOC1}RRX4-
zr}yCJlS{dJJkM)2N9N&x8wDzTu9t=;CE)3&#?_;KV1Lv^JFPQs89IVqcqLno&YEkw
z3Hm6pF?~b#3iz0p&=u5hKOSf$Y5Q+ql0sb~YXbAk%L5`}zADE0?WfTW-7-XWL7VkC
hGT$uVpLzc-_zz{`*MfmAj<x^*002ovPDHLkV1l-mPTv3k

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/code_unselected.png b/public/assets/tabs/code_unselected.png
new file mode 100644
index 0000000000000000000000000000000000000000..05568edfa71dc32a408cd3deee9bb4c489349ee0
GIT binary patch
literal 812
zcmV+{1JnG8P)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQ-bqA3R7efwR7+12Q562>-RVpVv?awph}bA3A|#;1M0_PKbm@O_
z;csx`Kkx^bxHZPag>hksDGL-tKtNK;qqLa5X4;wQc<zu8+L;<zu=1qIz4zR6zWdF0
z&M7zZs_o)}jK3gU5B5I*um4;?;q`N{^<S;8EFG(bj@>@RX>I4BB*tJBmQH<a<96(>
z^VtIz)Gbb{frGa%;JPlf>@@7=Z*ZalQIEl{m*LW*d`O2``~e6Yl8>K3kkzxe-d^;1
z$RSdKGMEBn?F3i~dBD84CSW%z=$LgV!<XT<4G26J1cN|uUJfHQK8;ePMoBaV98W(A
z<v8%fP!f|&4-YVz7($C4?F39qAh<($jdGd5ByfU^u&Q8kY8tAhp;4=0`Rfu4vklj2
zqf$DAIuc0S&zyBbW8*W#NCMKph^OzBiCN_Hi>Php5zWnF{Q3=i%Tw3T7d5NLsJ?p%
zEjI`K>Yc7veBEMhEs(wmh+3R-1#q1<_U#CoyDJdFgS4*V&=~;imM4{{$00_CVQepU
z0keZomZ^tNvGZ#iMvGdEG`7qp>Xj05Q@2srEh3Xn;pk`&cH4v$ihvb)=+YQ6qxVtl
zf%h@5YgtUr-9t1IrlPsvMH#i__i*(j<{v$QqsCEN`QZ84eN+!);^sV9Ua$F>S52U5
zx)6!A>)7CxFdWOk#-}$}w=EA;&|+TKuzOJyuvQLe6?)0XoW0(0EF5mG(9Wgdks*<;
z@=zLbEDecPHcZUV?)TT1ym*$^Yd+>IfX#%WN8wUIv!hwmsr@RIW3L9XBq5^fP(mRb
z>=mI7k3bM5rjXA9$Db6zM7-lwyVMe(5{0!dA7QjDsIrJ_w;sT9fEZ1@Np<fhOCWQ`
zVzqpt82f)=mKn=oXX86kqnELDeBvuqePp{Ff#58n_cIMGjhVX{6lw%)bYb*8^abzD
qU|qCKU34A`?3VKY{4MrE!T$gda0&3GBn&730000<MNUMnLSTYuXn7(4

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/experience_selected.png b/public/assets/tabs/experience_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..a6379e20ef2fadbcf11bddcaedb76e0ca527827d
GIT binary patch
literal 716
zcmV;-0yF)IP)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQen~_@R7ef&l+SAuK@`WoJ3G6Z-TaWIO*K?S@S>m;L<@=vB7*ef
zUm$q!<Uzse!K)W<S`Y;P01sX~2mukKLW>7QD`=&l!CGP<m9{2nez-rzHxoBz-B2&h
zLGUe;oqhA>GjHGfW;H>E0T~+*S7HBMIR9H&W)@d*v#^A6&F_Y8PwBXJW+x^O=DNPV
z6WP$s?9}vo@ut*_ge<PK#EIMQBEEhPnsoM_`gGwNZarC6nQBG?dLpBih37)hrOAsM
z%ICLg5N;D$hhd7|<lOjZFA6dE$>|SR7byZ*&~#42fCzjV9w7732+qjQbO_(0L5F%j
zkk;y$ySy&~kJVg)_0%vJ0VGJ8gx{a!IGpErTk&z>v8&*aFF*$dv|g*L(8y0L^B2o4
z+<66jTqBkKf(MjY(5xbG+hB$TW@o^-*#QxJ)Cn+kMBwyZI|7eo{%C#`_s;G>r4e9e
zDZtBefQHLZT6gfhVPKohF*d}I;6C<`Xqd<|9LSltQ7999Y;$;Fp^9h4HYRr4IJzf^
zONT62Ttn72ktYd$TJzBI1Xk)kzE)j4oNwStu?f#>N5JwSmN~Oha7iVzU)q@cyhim7
zD2y5zib|D=dZ8N2I?bg$sz-m|V{naX$`fe>rlZsVYF3iFn7jB}X5)7&q$aAlMsQM;
z1PdXPh+6+|3vFT~LEW^WTS;tq240t%YUlIfh5}2!T$gcS<D=+4Wf`(H)Ow?28EBk;
zP(skI(_v}onUUTIHP2Wb+4e5PGQWDv!El1UBVmmxno$pUCI>USOMw~v!MY};X#2Q+
y-08Z)NlfSA!dBd4nQsL&Wc-JRm5AI2T9%&;l_pU3JAT6e0000<MNUMnLSTYPgGTrO

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/experience_unselected.png b/public/assets/tabs/experience_unselected.png
new file mode 100644
index 0000000000000000000000000000000000000000..75d480bfd61e67831348f085bc972a0d1a0fff5b
GIT binary patch
literal 737
zcmV<70v`Q|P)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQlSxEDR7ef&mA!A%Kp4iKv(I)C$Iv7#0+o`|01Fa@QkA6(6A}Yr
zX5{~Zfr$YLRqB9*5Ca2IC88h*LWm+7(g@O|X_`7t{K;!KapI^S40P*7*1h-j^K<V#
z=dgvRriT+M!U=H$>?!=f?D7M9`<+JR6Pkq;xW;ZcO^79NcK$xp*~PH$u;57e-se|X
zdhi(ME=-5(8}%)$tvvZBI2*O1UM`|lTn&`^3b~pAV+^j<13VYhfFQ--c^+)N0k^vc
zro=IEgLX1^CloLUBFa0ZH;|H(5Hgp*xD0_S@Ei-SZ4Ken&qN7a%fPcuxMml7-`*V$
z2dR})(*&02<tz~3IW`uSmypU#p|#yWVJ%N^4na|A+@lv*Fq;Fd(K?crEZfBT_jPnS
zMvwx3s%v#&x9e~y1tI~tMmv+^eToM~;+VUV!=^af?;BQ;w3Lb;Fu!~cf@7fm=Qo<$
z+pwJ&4Ccb56v+t{@iQrKQl8W_+D!&AEset4RcN=5fwwDP@cv~PvCIt8)0c5Rn}f(X
z)OZ}pq>9!~3th`bucM>g-o@9C1?aV(@GJw`P;eMUl=DP7$feoZLbXvr6%Lt%zH8);
z;1L8c!9NR;YKlb}qMC-=(?j5B5P|!-lmZu6<PvfM9i|8ucOO0q*Svo5jO?fooCmJ)
z58rZ~aC|g~z=Husiu}d&2;>G^-$B0g3v&7*dbJ+`SWHZeG7gO+a9N=XLcf6x2QO>p
zpTjm<;E5EJ$?O=+gCr|sef!M_Ja_#j${QOnZGW47ZdqVIHZ==Q7e*w<u+WA+VBd-}
zxm&3D&9M@JTj{G<%wB^mj?Frv*&`j*Htm+K#(0Uqn>3+m_-Xk+<@BHEz&!p11@PZF
Tn%xe(00000NkvXXu0mjf{z6L#

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/social_selected.png b/public/assets/tabs/social_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..d99ee69e6a44b4dbe7742f9822132408df02df9c
GIT binary patch
literal 227
zcmeAS@N?(olHy`uVBq!ia0vp^;vmey1|%P7U0DF6I14-?iy0WWg+Z8+Vb&Z8px{(b
z7sn6}-nWzQay2OMwBDWY;;+0JNAWc#$HThPB^Ue6XFuAv^RVEhZFhXR^B=vtA%8FA
zy1BnK|4r`8GO|uZj~~b~giQTVw>@H?^K?<knk$=y!f(tuv^L@0@<Ylu<L0mnKIA!e
zD{|*D>#h%~ER)ZrKIi|jM`pXZxaoNYrBg4Tt~hk_amOpstqY?ve@;y`7mbVC^5lH$
ZdWHkqd<G_ri9iQ3c)I$ztaD0e0ss%(SbG2f

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/social_unselected.png b/public/assets/tabs/social_unselected.png
new file mode 100644
index 0000000000000000000000000000000000000000..f545b2ccd2f3836096d75bce64d747b94346f368
GIT binary patch
literal 736
zcmV<60w4W}P)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQl1W5CR7efAlnZVfF$_dSX}1UJfqT%}67wFlHjp4LkhW1`TjG*4
z!;dz8{`#Hmn^ylO+=4y+6+Fm0a<+_(WEr~q747fA*8%{L1Eh%dsBO>QR%Q!o@^x@g
z=B@S7TOtvh`jl`p=m3Kpxn6^tE@9;)KoHdK+42}I#xQG){LiKEeeOqtlD%;+l*=l%
z@u@;UJ>}_lPz~xqk-I;TCH_vvS^)FgMV`HE9QO(y_DT&1o(tKvshV1<5S$i%cves-
z*OsK01XVL{2pXHPkPXOc48YSs9277vJI0)*E79dcR>~95mJXYFzmp9<eO$`zysS#-
zfR;B7Fm{QQOp{8LDOs8Uk+O)9Pn{MsPJ6QL_!Dh{1g(L)q@_;n5UHuSsWgh0&9qEH
zmmgc9?Ex5?rrjn8u>$C7o!tS#Gp8dLDYCa&d7sqWvT&#csRtdBrXtJ?J0EfEL2uM8
zGyrO?pMj{gL^@i}hT<AU{Ul$LW*h4nVui>hup+3<5$nd`D5H)^Q^X3Imj}U>mqDmH
zgQihF0U(psKg+h=2((1vVdwJF09b3uNct*n%&+AD^-9;8OU9y8X4{+|oXV!F&$yR0
z0Pei5YXM|{YR}zBBB?!Kb8GiXyHXqKXu>|LT6FC8@5zMeK-g{=m&HwxzLR73gArB5
zqi_42LE>Z@?W8oDuvq;1c=QTeC-v>LBzH9Ny`fI_%3Bh$(bt+@nHc?Q9m0xQSGNdA
z+j>H}&L7V-H=(yf-&b(&?Tn?$>@7LjFdH}-t-6kvbCG|@`9033CoZGf4Rk7yiz+Wd
zHS8j;*TJXZe>U>Mb6&68!y8U;U!BPW?Ye$l@q_YMP6NtqXXjS=0`k`WkM#x)>v<x?
S+)>;B0000<MNUMnLSTXj!CJro

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/speaking_selected.png b/public/assets/tabs/speaking_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..06ae1a4b5fa393273d09dce154a6013679d05159
GIT binary patch
literal 630
zcmV-+0*U>JP)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQC`m*?R7ef&l+9`rQ5462_s&PYW|Ei~ZABshK?;Hh7TmZHL<FVa
zM!|*P3-|!y6Vyeax)7v`M(`1IBieLfTZMw6pjfK~X-cu7Cbb{aOyX&!A!eps6te4q
zVa}X6_jm63&$*+TVsy!Lm$=*519+&qU6sWQEh)j-U#k=+%6urVF}Jiq%+lmD7S~Q^
zxOuJ@L#y4Ew&E&m6o+2U@nmWl!*)<s1ZBt`WMZ5CCJk?uzO2u)JAJ(WStIAzoXEyn
zz;-7f%jnbsBhwyM`WR;F2!@lzOdP^=G8pb*iS_Wg>M&edpt|1R%A=2rPR_S8TYdmO
z@@@sw6<{ohwxZ~*T`NhGOB<GS6URuTc|KF;d?6)8b37>3c=e^yg6=p0_#YKV3t$_#
zlhuA#3T;O4RD`&#Nw^8=C`)m=+Mc!T2jKnr7)k(p+1C4$8I$#T6K}IA9me=x4bDaY
ze(!=q(ys5tCaQhzUraJSyMixrDQ(b`iUigK;Q6%0(}5^G2`SL=Pcv16%LSj}fQ@4-
z247cXk}OGUaQm!C*<rz6B;k0{;HbU9lCl}RWJ@7MucL7V_-WB&Y^KWNHx)e7#f+NV
z?N?kq6@-V*dFksilk-h(oN+0n|JC=Ui-+TjjD1_9R@eAuoZo(oT)e@HTP{Y(X9|UP
zbQk(qUhx@v>oM^|4wX}5_<EkGoZ@!dH@qFPoBw~Q-Lm!>KY)h{*Hu~m0&Gm2B2#nQ
Qj{pDw07*qoM6N<$f>AXkm;e9(

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/speaking_unselected.png b/public/assets/tabs/speaking_unselected.png
new file mode 100644
index 0000000000000000000000000000000000000000..640ddfbfb625a09d15261bc46d1d95b3df0961dd
GIT binary patch
literal 651
zcmV;60(AX}P)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQJxN4CR7ef&l*?|@P!NXyb9~}UE>2P>D3B_sMFpye2B9F3SX5%g
znwQ{lcmo~-i4_PIuwl^!5K<|$s40acYC?1Mm2sp>ILDz2lwFTx+2a|1GxN_mX7^s$
z0amp5inw#^B|KK$mC7PwQ_@Rk@DpcW-@@r1!yWd(ga(n!!KmyYv-JpI7uUt&w&Gy#
zB}U&qLZtHGT8h9b5Crg@Dg1FCOf^t^{0w&Y09-ebFt5bcC{=#ee23|eCiK!xC`M)u
zW?UgQ9S7fqKP$|;8h&|=bg_)~tLMn>JVEBxu9QH6+wD)#3KejYAcUST#^{M`MWHS@
zhf8vqwOw?r>lnAF%X9%oxq2Qxze~a~H3@EHBjCsvl!dD)x(p0G6{=Z4Vr?DH(Ox7h
zG$i<1X`O}@midoG{&Y4E&n1~Wp9Y<!yDNPl!OPoq2p;}!mi=-9@W4Z*dLM4Dg&-`1
z3na7F#qf@2;%@yRR1xNlCg8*=Sb6e4z^{qGu=yT5p;4HJ(#CBGE)UcL4kjrGcyOrY
zYV8g*O^0sKEJOnBlP*3tn&|I;fReK4orcZL4S3cKU=rm^@X-DHsDZSuW4l(x33X!6
z0DBZ*(0Bu<cL+uu8CDs-Vn7H6R@}nrC<+d(*h6IMfT=Qc#sOx3&FN}}AxA!i<guq?
z9PT&JIsOjUo+4L&N;@?X$q);VL@Y5>Is(@ynMsn59H4a?goik?Vr7X$EHUhGHvI+K
lLaekE7ySQaUczJL`vccAuv{_CbI<?)002ovPDHLkV1f_a9E$(|

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/summary_selected.png b/public/assets/tabs/summary_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..2b53bd32ce9c87d3648abb8111b4af5f03e74f1d
GIT binary patch
literal 632
zcmV-;0*C#HP)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQDoI2^R7ef&R6S@^K@k3S_x<Jlz>yOqfq-(LMKHD!OF>W&tb+Cy
zf}o87J1s1=6f3J>rJ%78Y;$NMTEw3sigI|OM7<PVa$LN3>+HU}+`hL@LyA<o@ZQbr
z%zQKR&Aek$O6=C*y9KOp{{is#-#U6YS08_px9VTz>n|JI4vYP5pbwUR$c5)EtbFgG
zR`sxWuEq}C_#nXrWN#CPCj_paoW%ZWz{+OllwGR33-=pxsnG}b5;%zq5&Y7wJcz;l
z5HjuI)!GK;7Mi#-Hz8*xBP&7aK<6JdWxXjN;&F(uLSPY+$kX6VIN**C;f30^=~ZxP
zaaG%jFAMzH$F_Vzor|af;f{e31*L~EVuw2NW3<u`cVD)w8Cc*C->!oP2?bK61TZ|@
z3e7AkIj1g`8X0XvfAwo|zPu{IoIJ2{481Io80Mod``{ixf8bJ}61d7OcP#MrlsGL=
zp*L#qH}T^9_z>OzQu7E6Jrk`}JacbNzWYgzY{Z!Cr%1bP^gC^eqRs}%byBr8^R<$M
zCA7>=xmbBa0ERoGM2c6&sZrU_RTztIPB)cNd4t=FM`AW6QqxBdHrtGd_B|Orw4$e{
zlf18?S>VccW!A3Hh}jaWK@XRY#zv1@CM}eLpE}^Po5wgpx6pwRJC&rkeZn_xY|$EM
z(dAmbE1!O5XmzMS+L)QW!0~;++3CS<76S}@TX4g7$6_fhJ4X3Kz<=;kVtxY*44T)Q
Sj+VIq0000<MNUMnLSTZ6jw3<<

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/summary_unselected.png b/public/assets/tabs/summary_unselected.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe7d73b3f4a098b0678160ee9c932ed542405b2c
GIT binary patch
literal 707
zcmV;!0zCbRP)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQbxA})R7ef&l}l?AQ547jci!n_CP|a&!%(b>Afymb5xW-s0D{YY
z2K^X*2f>X?(VZW_O+~az7d{BKh)oPlnvlnIo}Ni2ues9}gzP*Ja_8K0f9Kr)Ig_y4
zFP#ueGGR&F5%xbkRb467n{aylHUeh|$*|D=^cvDi9+`3lO6h7Ma`Ev(c<;vt^uO=J
z?KPpA7OY3laMrBBlU4L;A0cN;DBODjIk&M$jh|BCf#;yL{|aum0ZA`HGfL285lj%F
z5J=JsklZu)bff0`7bx!TLAAEI1gX<<`uPofyH5wMLn)N0!XgwshmhU~CaDlKW9%z#
zLCKfVJ$Q?Nk|m9U+x4$-I}NC-<&m~bQi#Y1oOsvBCy+d{xdyr#hKC19HaNI<`~?yn
z5LBI@@iu`O!FXeI6B!~kIPCo5wmHrHK^J1CFayU&1aTZXO+pEEBa29@P*orV&gJls
zQR76J3!KRE;PGCh(#ZPmEX?+R!_!6SxXLp|4tAK3fM}hQ2HbbgaZHs8BJ}|Q6&)a&
zthI+vA!W>2rg+7{bJiy8dILn521g?(>8sR04WUmZ&Y9rb$Yf2p{+u&ja&Tj-f<N`&
zv>jbBz5z8>P%@*>JR%G{Y+5A@QovChH!W>{1vhW)P=)85n9@VY0)u(2I`t$M9NY^4
zr*H#1)hYxQRlnGzF(8Dd$f(@iMblA}%;_^HOSID-QoFP=?%dDgsP+x5Rtv66T2mg=
zG+?c-qj+T-Kf5A)D&{<67yZpC)YFYDLyn50pO%sJXq;O%a5A9zPP^1xrqs$O`wq!|
p)VYK(2~PRuG*5~7XV+5Ue*ro3yo*<z=Z63Q002ovPDHLkV1lgAJ_rB+

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/writing_selected.png b/public/assets/tabs/writing_selected.png
new file mode 100644
index 0000000000000000000000000000000000000000..85f1a67ba22be9856ec86185e1eaa5965d58c2aa
GIT binary patch
literal 558
zcmV+}0@3}6P)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkP;7LS5R7efw)JrG?aU2Km@60~zZfm_35pq~@QBEEyX|<)q!37th
zlw4d$$<0Bnq+H}Ago9^@HXK}>BuQS`#m#yYdF*R;#{a)Hw9V|p#zFp<nfXui`G4m(
zzxgu)8Th5a{*oJD|0zDW=|J<uF<#u9Y;|KU%j~`rGe=$=JZR89cL}$Tmn`sY+|LV`
zKe$DGQ7TIF)1Ztu;^aw(t_6n#S4w8WOi;Lc$qw838;+bjMr$(Az3sx@jRCpoKFO0z
zw0%zDo@EENu34~ZEd<UBi%E@v>U6A~xzJFkiw&o6@5&WyS1c6zB(Taj@SF$y`!hO<
zb?7WNN?<w>u`CqsTm6C+DlNb;fdxwQ3}`Dc$ij3oY*|Ej!_JVz$xx^?<O$LPWXCAW
z<S=5<LZx6r;vu_*!u=$%99*6i8Kx_S#3{Tklei+A!*Esj#Nw;S;xu)!DFqsRLQp9x
zbNsNHql0CW-@kg%GI<KKNsqDGc<9w+M;3Sl;3yM^On!0a!r>i*#;F?^)I6qZRcI>U
zU?p&vZzp;|M@hFhUwqiHyD_x;j6|gyi><jx)<x{tAoTNs{-NUFNU`h2PlfY)k8t_u
w6<j`EycN??lKgYkA2^ZimLG5f#NWj~00hPerl^4WP5=M^07*qoM6N<$f*siZqyPW_

literal 0
HcmV?d00001

diff --git a/public/assets/tabs/writing_unselected.png b/public/assets/tabs/writing_unselected.png
new file mode 100644
index 0000000000000000000000000000000000000000..ec676ce0534967441a54d989afe428e0a74ac322
GIT binary patch
literal 597
zcmV-b0;>IqP)<h;3K|Lk000e1NJLTq000*N000*V1^@s6;40Lh00009a7bBm000XU
z000XU0RWnu7ytkQ2T4RhR7efw(_c^1P#DMYZ@WK5!p7FYma$EUpb=(R;s_>2FTC*1
zH{c61#v5-m8Y6}`An}Tz7`ZdVL>(H5VGG-s-C(%3o_0aEwv0`)E6+{a)AsW`=a+M&
zs}GM&hBV|Mxi<Ts;?;Mn6kpy$KR)zK_pf8oK5oz~e#SI(D(jCh^q;N*gX5-w1)smN
zOnfefGBE>^Oy%`c7w&h>^qLTGdE*I3#R5BxD!CiC`MSNuJ|?Of#c=#9^}Ww6_{}p~
z^$Nbx2*#0y63ehC3N-c#1QVC|R_i`8{l#Lzo6pf32PkTWKsZ4#lB8MQ<^9$s#)KQT
z7IAhgHoStal?ke8<dHEuW0X<i(-)b{UZYs=?)W5~-uQ2LpMaYB1B?0Sc$n$z5`_cl
z#ByCv$1V8n3(;{K_Kk$v9ouk-%tGFVP4A}dLZ@bK!L1)9yW>t+jf6<g=h+b*_ku0m
z8yDTB=N3?+DLUa;G)(Gpo-ehtVNbkuSfljn0fG1|x#jElWs#{U7K?<L8UXghO>GaO
zsqty;F}rn%#rzV<M2smbimIs7BV!Bf9IjYGYJ%*|JK{w9`M$nFp(-;zle6K@AN#rQ
zKA~dyrM3H9xOJCg$cO*j7#}J=bmzJ5M;707<6>fdQle04uf3@c7K5{<YoBkI1_;%u
jIi6jaJKq1(<52NmsrbtIvw<`v00000NkvXXu0mjfWNjVW

literal 0
HcmV?d00001

diff --git a/public/assets/talk/bitbucket.png b/public/assets/talk/bitbucket.png
new file mode 100644
index 0000000000000000000000000000000000000000..fca4eaf2dcd126343fb9b51f7faaf248fd5b8872
GIT binary patch
literal 6735
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

literal 0
HcmV?d00001

diff --git a/public/assets/talk/git_hub.png b/public/assets/talk/git_hub.png
new file mode 100644
index 0000000000000000000000000000000000000000..2468edf78025d9777892bb7ff7f40f141524df59
GIT binary patch
literal 3109
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

literal 0
HcmV?d00001

diff --git a/public/assets/talk/movie.png b/public/assets/talk/movie.png
new file mode 100644
index 0000000000000000000000000000000000000000..f60d0a8734b446529e641ad0e092eb5a09b5b371
GIT binary patch
literal 1224
zcmV;(1ULJMP)<h;3K|Lk000e1NJLTq001-q001-y1^@s6#dsU*0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$YDq*vRCwC#S#3xZQ54->2Sf0e5Cnn{
z2tr^4K_LWzKcpZMqbQ0@(b_Z(OVjmpGflTuE3*#`Lo12`36i2ff+Qgj1VQR=AP7Pr
zY!nO8%yjPdmZtID*~z|UHXj`BGH=ezJA3cD@7`UnuInB*kMrS+yJ4;a<3Nqq$$~mV
zy_;cjf#)rOx<$$SI+!;=hPbp(al*pSb@gP!Y!Hi&V}qC;Yil|)D&uLIK4K6<W79tq
z6zmL@!5kBdPh)Od0Q?NU3TB7ta<1=BEx5J4E7xK!PgAuaU<;52co>wnw*;0X{2a`M
zCHH6lvWJ@5I<gHRVhoo?U`}#>I?O#FCBdWnyUw*vNcgFOFY{{7PYY^jK3f8lNAYSA
zE>l2{jIXNdWtjB|Uh@{HXZY<fn;D+^Q(3Mq&`M%P65RF?*w`EDcqic(!8}U9{|sye
ze^$cZ2J@2fZUm@RPMv9_5U4VI<H1Wk-DBpvaUXrF12%M5ga1y#rxZJECtrX+E8){R
z?+7sqBAn-hH|M~aq5G6CU)0C2`GPk(a4Eb@O!cYy6cM-S2^KR3zBI++J?0cE8<Sk9
zf}aIbOakzZCGG(VVlq#Brf;=|iQ9nKH&$bjOR<$FYbzuv);!27#n-R&sj^9kcxz`{
zkRTG01C$P3yBsm!;6G7A8?epBvx>oAlJM!-eTGZ(@i2*p40toY>$o66^w9C)!GTHh
zWcl&xG!bg437&Hm{0YXp6wbAA0k|*nCl72z)3k@MPvxbB)+fBTq7+L50&e`x3WQDD
zN6L;<%s(?-o;PL|!tGmwvrZ~#rGgHZ`YFU70PlgBxPZGOLlKX|hu7`>P|^!h(D7}D
z4Fg;3v@Xr{r-K&V<7rchHkT#^;7>DL%BW8ahrD@E7A*un%JAuUNmt+@+AHg9hzYec
z)UskaFZ5Mdh@nO71b>?0rivOb-=cyj1V75~b43DE6_2jl5z~(rxY43jE)#t{FD6j;
zn&GC11jJPmQ-U95_;jqi0M^Dr&c+tH+1glF!%cQ{_a25BvZ$Q*fIrD_<27Ot!zYjK
z0zb;|vyEbeAWKD~=;!?wzXj|S?L-PAW*_*^IX>P^)%Sj8nvRPC@FUE-vxJz;ACiKu
zYux+pQ}x45wx7SS+oJQN0`pL?xnbObPhKstC{zo;k1*U!Atq~C+HULUmbr*phy&>7
zRVSwAU}uOLy;rh1pRVa16PADpr;3Srs3kBZS$7OR+CwH}0AZsS9ftV+lS0w>J!BN*
zq!HU9+`1KVQ-a}hnwZ!JX5DV{kXK~TRSy}z5l0I8k36Jlt`x+r+p6?&q9E=2IiztO
za#hF~evwL!kn`9GIhQ5{edQi<(!uIm^^glnpI`D2O@0E_I7Co%r5-Z2)gRoH<$O$|
zlwRhq%6DqVinSf&8a!|5(aNOyE!a+R>MlVx8a$VIDB1pffFAnKKQl@6ET9U|%Ynsj
mM~<sO8p>Dy!E^ffD!>2*EXEGJ;(%cQ0000<MNUMnLSTZVtvv1k

literal 0
HcmV?d00001

diff --git a/public/assets/talk/movie_off.png b/public/assets/talk/movie_off.png
new file mode 100644
index 0000000000000000000000000000000000000000..bdb24ce98c465196d5a0eaf4a2969cc8f464ca83
GIT binary patch
literal 1803
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

literal 0
HcmV?d00001

diff --git a/public/assets/talk/slide_share.png b/public/assets/talk/slide_share.png
new file mode 100644
index 0000000000000000000000000000000000000000..dfc3f81405df1bdc9bef3495be1d882921b45828
GIT binary patch
literal 10985
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

literal 0
HcmV?d00001

diff --git a/public/assets/talk/slides.png b/public/assets/talk/slides.png
new file mode 100644
index 0000000000000000000000000000000000000000..c833c158a8265cba448f8a584f40055e77f179fd
GIT binary patch
literal 619
zcmV-x0+juUP)<h;3K|Lk000e1NJLTq001-q001-y1^@s6#dsU*0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!4M{{nRCwC#n!ic|K@i60?pDD<ZNy$k
zYhxvd4<XoCC<q$=p@N7I#7ZO}B8U=D5yhm*YgkzdK7f^-2x1xwcbzp+a(BDgEC@S$
z-h?klHW!#5GxOc$?wAk)I>o`^@fdEVP{TkwUQk!exSN0(d>;V%F@%~h0$~Mvz@O+f
zR|o|76kSv(wRF8#+P<fd{C@dp95?grYhf2HS4Y);L<L5M%te}7yBNCIG=5h`6;wZp
zSd?@<SNT7oO1nE-_4q)<TPVcOr>MgBI&F=h&XqIKCWd9|^JwM=O*77Xb1}t?$AJ_s
zHiyGjCE{YUxVg0f3X?8D1*YX<)ntAupqR@E;w@*&FV%9OKRFGYvuKX&wlhR*=&enG
zc7=p}g~$Ry4%7iC$SdRwh-V9kdsLyI$z!Mx|Hm#D=B7Xch!eMMZU@APSBP6zh!bx)
zZm@06b5qEHa-bZj8O7Dj)SR=VOHexwY4U@`l?|ESWD3aF3gP-1Zbq{Nq+HhlamP@?
zbdkgsNG>)|{f=PX|Exmj9MMJP<g*3TaM^A$myXz~)0^bAVN?+vByv4FG6$K9?%KA{
zyi_e$ky=<@2g+ePL*yfKK)M<7w?Y~s=Ib3vO(8zW-|(`CXVjgyEmym_Jj<3TXo5ku
zcpytN^xJZ8pm;)qXuO(skbhy9P!Ar!JVN48GF5yDFaYj(0(k^ZFe?B6002ovPDHLk
FV1g-53@!iw

literal 0
HcmV?d00001

diff --git a/public/assets/talk/slides_off.png b/public/assets/talk/slides_off.png
new file mode 100644
index 0000000000000000000000000000000000000000..cb3337424f6bcef17b51eca50428b76f900d6e77
GIT binary patch
literal 1059
zcmV+;1l;?HP)<h;3K|Lk000e1NJLTq001-q001-y1^@s6#dsU*00009a7bBm000XU
z000XU0RWnu7ytkR)k#D_RA>d&TES`+F%(TQGf(PDH-aGDD~RI4FK{D8@E=q}ih`SV
zRpe2qSSa)Z+_-Sxg-gG{g(&I=2&EP2LQwGWW|DYsX42j_lSy9XbtaQXm`rjfId@L(
zNhU4VS~FkT+S<LWL~%7q#Ce}x-)*^Oe@ANiF%1DxBEOy_$tYykcYDU!QqD)qL5CPi
zg)ICm_U()vUul^Ld((a`+M6P5nS-HO)G{ePy;xh@pRMiZZoIvHC6Vb(I(m>HDfHKg
z(qC+j#Tj&>#3G?&GX%)Xot<k+@;jV~i_}wF&e(`$nZ09dYkT+Pro)or@>izB`}Otb
z-{`RD3Qa;waktGGYS?#K=;T7d)IC3roTXZ;jBD<<i=>q^ey#z9QUqlX1qC)q!)`bg
zCn`Jz(5V7{I3Y;q`QFCH`sWxN+T46~gJ;?O(_k?wr+_8<i^Umq0<l<J_F8wYfN5qk
zwxwtYbF*$2(LIL5{3$gdG-!W_DoiDcLb)u>{|>sfBygPr({_}HR2orm(%Ls~<&GFt
z%a=|>&RCVQt(@4MmA<|g+*Uah>XmZjknPapUAG7LVKsuPg;hGqa8`Eh5W|@8B}z~+
z1=)rQy0H45?V~N=4nUga$ixt?M6o7ZCw++$gqGFT$N5kkUjC2D#m$h9A8ex>6(9;o
z4yTpJ9R$B-k1fx#fI;p_w3X*(FDDsyuS1@0I&5-A0~w!q1pXjH5Oz(O!}y6JhC-sy
zP&s@7I`kIE3+cLeN=-nOQ%pA*>Kb?JctM89lw$>)DVUzzuOW&lhaurhlBgV7`WTAB
zA-_A|!R$t1_zczAGv7lZ=Ck-9MKp-ugb|Oi@EMzl$5y)gx*8}Jm%S2vu&L%;f<HF1
z97F+C4rGqnVYyLJH|Xl#;A<J|!RqQV(FA4|R<pAZ=zpB4O|~CCd3GD7*QL5DRG;9^
zAc}(}k8IZj&M;y=A25<?DH_UJfk3=4Q9Hs03VaOVQE^{?Tg9=<)WQ(POF{z(t#bw3
z;42_`JRV!Vu+u+1W#f>+La-T}0LYg>4kY!59UdOtB2M|9J<~SCfLMI~;0i=@_4$Cf
z@Ub$1!OH%@(aNL8Pi<AdSKp_ALlw+nJw#W(pcgp0*=@IJ{Q}2Xd{?C^H2N)f3XSUc
zD+<^bq>Y)ytKD||_?-xG4@VQsw4$1Fw0f9jrP=RdNqisdlzaQ;^#|9hHw+QgcG(Q7
zuG}dM3bG$;ig6Xkw%QML-d5b4PGHJ4|3hQm9y+vx1Gh<NIKd13jwRwp$guBrIIaFE
dQoR?#@efoUkrPxo0F3|u002ovPDHLkV1l@r@CX0^

literal 0
HcmV?d00001

diff --git a/public/assets/talk/source.png b/public/assets/talk/source.png
new file mode 100644
index 0000000000000000000000000000000000000000..9797ee0a3de722345047287167e373ed25de521b
GIT binary patch
literal 1594
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

literal 0
HcmV?d00001

diff --git a/public/assets/talk/speaker_rate.png b/public/assets/talk/speaker_rate.png
new file mode 100644
index 0000000000000000000000000000000000000000..92c3b7ee2209bdfca8130e3ebeb40113e28dd882
GIT binary patch
literal 7210
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

literal 0
HcmV?d00001

diff --git a/public/assets/wait_bar_green.gif b/public/assets/wait_bar_green.gif
new file mode 100644
index 0000000000000000000000000000000000000000..4daf31fd313158fcfac2f1c54d54d7d135c38fdd
GIT binary patch
literal 6126
zcma*qX*ARixCijx%=|1fjK+|i?1aW-$(qKRt$#v=C_;7>C6WB>V;f`N8A~zNv1Kd9
zmOavDNev-Fgh~>(|GoE|`{v$r?(^n(^*!f#_4%IXtcj7jhLbW33-kg&OyjAb5`4)^
z%dl#df>E>TDTlNk-K2KC@;8^s9j8;ebaDobGWztA>8G>$4f2MK<66~{I<(^3)NW)0
z|DO>%Wc$a^+Dc#7!cYl^N5KAO#D0Mw_usAXZ~osi0H#BRB+132z`dfzd$r@1!q^?3
zkLm*J`xr1n)I~OVQ#{rgoJVi~y~UPO>^db@SK(X!aEhUGz`LF6{hTJ>kr^Z|$QOgU
zEz_`ibGBgdV98DE-dQiih3n4dp_hYgO-x+9!$SNLoZLB+Gl-_*Xe1Ji&beb*R9s$+
zO@CxmR7OSLj<4n{rj=(m`WV+07CyX@*wI<y7v$7Z7uRjsS6<W>I$&5!E$f1MdJB_-
zW}2y$jWI*ihEb#U=n4O)Wwf&8>BsMi#ZkXd+quZS!(Ry+CttIQ5`g<OzSr;m84y9T
zA+{=yUeFEKTa>#o<5F4Nd<wg7_|&+@u`l+5!68m^CF-)FZNIFMw=v#4f`~UWrOI|g
zV~I@<P{Ko4R#l>Yj1mwh<uQ@Ol#e<`ub^5NZg(8LaO(|32r_CDAhee0Ue5R`;NVJu
zRtiA3qUgDxH$JLumWu*it7#Q4Xby&W$6FN7sV*Xya+a%M(R{D_@6$%w0WYPQ*xA|N
zCaC+34`vVYcu=yG5o0(RFCO8EJ01z14pt(WB$ef%6Kv8;Ra5>$BkgK#K2h0z^U;Op
zwwXn{VOwb&#acF^voPP1YIf_7ALul0=9#jyZq=es?;!36o}^sOKkY+X96kF^5cXh)
zX|3d#af{5spD*uBw(<ifE}Z2HeKYVGI79@QQ1Tx<d}MX);S8ELDs(QSFFAzCwBPXj
zhbR@{hmtAomqF&V@?ylwvq!~oQGe3s<9AQo;OCK;;B(eQjoUcKJ5_!DL~>MRNZjQy
zJt>ihiku{n6!)AAk8|w}FmN~#lLcwB4&sNzM4=Tzf;e8<(U?t}vXtYAqqzonKfmwl
zYgx+wIfpZH@>9OgL_bjIdFt1@0!Z2;5&`LKN+reW5K1q7m(rB6K~CN;%M}wKFBeZn
zWiJP3+6sJz?}(w?@0}q!@`0R_CiEPzcW()E*L|-dr*6rVr_!V2i&s_L6Pr~8ea}<@
z=3DoLP}2`@cem4*C9hVGNV9bv7LFbaQ6=>a2y4x+bR4UzUo8z4yWZK{tE>YJ%FhXh
z)@Yrup2b<<XmRzHaj>8BUQW+OGJaQ8bkj7e0r)F6Sm&RPHhJ*JDQ^OAK1VX4iq)BY
z&0qyLLql-;du?{T>adOL|D!`dRr9KuLzGu(-Ow<&CZOBO-(LZBGcV*R!`Rm3bbG;l
zb9(Q|m(%oT8vf?;LqC-;^%Y;o>mb0!Ex+mY$(7r6Zyi}8g!wK<<TnlN8C_|dve{7o
zfpKj(2OPgzJNjhC14ajCY)Z~?2nXaQstH=i(wl*YpPBm*G5*30A`>ECRRAphg&NgE
z-*I;?Fx2V$od0D#)x$ZAHUxYu+SoEglr`h%D?Tyi>VRv{LC{Cn1T=m0i8J~)qhNKt
zeJXa9Lzm$wQLPD_j_}daYzxk9TD4IW4c;96Sn~|X560=fr2Q-iGOPT_acZ;R%8MVZ
z!)EwrjCa9b>A&rG4<lJGA{YRC|L4cfKasx+4w;D^iX%6nKU{>b70<Q6t+Cq+uRg8{
z5rO5Cx57Cd5cWG90aQT^1c*W`Q$N)KNgx8T@PYaJXI-=}EsO)4g9(?@(FNlXm?{DA
zM~vQ~?dC(S^63NZ7Q#ItdIT$wy*7zA5IC^Fp57_M%6CO`SXuyQ3<h`&jJu8(vjHr`
z>xcCN(T7Zd767;40I#ocR~P4t1OxkdUedDe;<<=eHwAI-+gZ<#pHxix*7K2znE}E1
zw#YHP*N?Fvp?6}~<g3=708MveP`f@nekYIh*nMNTLJAs1E0xk%Ii(s+PK_~uL^vlP
zctT2QfXX7=!ec<dl2Z&DxG3eUA*DA_4?J<{;{rF$SWQz>%6k{Sv+F|Ff-Fg)`>w~!
zB#oE;)C1#!L@}a?8Teoe$=tG}Qr3IUn%OEBp$@5cYCtUe*u;+@ggd73k361{S+Oq-
z4h;?(+sz?=?z^5kM26iL#}-(#>k&L`$DBG+^S`X!IL(<75ofnk%r{zYq&D=D^aL&n
z{!cBy02pu*hWWP^9RJpW3fM)_tCCDMLFTUjjlQ-M6^W}QAb1h+-d>SHytIE@0$Z@2
zWhD(5yg^$g!X6p<@~Rtn<clksXws$9l^f2pC-h}msc2}O)j9Xz%0*6eR5TJ96&Ruz
z8=Zs=I}=MvLfiO-D@LV9Lx$Fz`FUu)lsg%v=s+jqlBC<`%1dGkk5}W;l1Q%g8q}Do
zoX8k*Sq(iZt0Q-?(5{G-P8xQ*LqbhWPrpe(&M+$deC{w9fa95^=`s21*wv}be#LJn
zq_^+KZ_nO#{^<U&ekDdRRWo>21+8)!W8E6KJra4prAAmo5-lpNoiz&eCyD$%83)w6
z^jxuK9H#FN5Ef|ZqKG96;FU8xNYYE7{M1XP(VY3L#j4f|=7@ZB(M#$eA<Rq&Ngmpv
zZd0>vYL*%8BDWuRJrd=|Z^~wL!Gh336({1UF>OtrsX-A}0zRvsLp_gE#i-3%wmHYQ
z8CPc1+O)PjnOKy!(X*yAZ-qGst*koI!<3_juG~{Z^jdrmc%i^~)2V6wYTOM5rD^rG
zg~MO+XM8<`m|a$Vq0}bdX$}GTaR)(jS!TKeqISev{q{S%kg<QhGN5aP_0$<7lNi;z
z(>H3h9)8H_vPQNJ1|N;f(?0)nK^Xl0Q!i+hX?I(YlIa+9aCqsNBRv$<bbNmi#0F*@
zx-Ls)9YgrErbdJ!ag%uwyV+$^S_4k*Vj*Zp<C$Qy*mA&*8*5{9B-~)UC_+FpEuP5s
zU|;~^GdlI+2%iq)69VI_{wc{o$3o&XGq;ILg6Sd+N;zXhNP?f&YbD&V*b5You)gsN
zh~)~RI{RPM*>pOO3mPm{yC`>GGQ#ABhV;FEf(C^`9PFs+2wUtX0AntI>w*{eRwQ7=
z8aFhriNKyrF_A}gIrZVCxMhU1T;Fm@Xn+8f!l@3dlw{UuaDr%pr)(*kO&=T)LyB{M
z{FR0YD=XbwkpmMeP%An9=AIspLgfUiKpID-C*cW>vHIwU>@CrfF+H>EhYj_Y<UPO&
z6k|2-KFyKPlxd0zYgqW2*+)f+eyMI>WUgldi&Its&i7MaR@;fwlUC2(=+G6w^%OID
zM)U11s0;LNudSG<(W-^*Z<*2IDW(t(#=}MN?Jn0DzNxnj-&a6<NMY|nv#~O^h82~e
z4Q@4nEH|S5Gkk*c#Hamw`ql>uG={&@q6`Rdt^4)pa#gAHzg11FpSV2KUJnY%`>2e{
zTUDuy3)WXP0!n7~4RBkoYNd%I2@Xv+^pZ|MokpUw$}d57{Lc~lGZ6h%{A-`>kCAMf
z&BIq-u@lB(1ivaxKH~54`Gh-G(892?I#B02t4}^P5_;`w^Wi&6=hKmw%^mhF!)%);
z)K_BEI+_?ZTE4$0!rsk7ONQ-N@6DL9pwuQRek-(ba&R9}9`FCx_wlpGPA^bI&p|tr
zYK7WAUb4|OQ~>iAr*~YBbpF|8&Et3oMwgs_HqT5s*0y0}pVYCLj35(!zuypU+};WX
zIx1v3zIh~tPHv0*`61J}busB`q~OPuui@Ii#2CTj>JZaLU-NP8BO!2$LQ4$sG{=?`
z3Prxg>Y&EdIeQaQfYV{dvZpzVdsx{l#Mq0v2s=`w8yacHn9C@-ze3E#MXZZhw+TJV
z8Z>4r;xSf@dwO@&DS*w$b)L%udH~-)@pdY64$PP{RSM!j!pe-(Yz@nE1*~I?thTdY
zox6(c+nb~tLgJbN7J$Z+Z^Qt5ArUqTU5<kQe`p{fYO4at&)1Q|Xkh^JF9V~D+awQ{
zqR-5~o^uF@MMYFOA4TH_;N~<IpDalcPT;H{St+f0XI@kcX?RqKl6Kc%5fH%-!`@<n
zSkM`FVGz>2N=wIBEDH7Q4qxZkO7lfN=3yEif~j*Q^}G&OnlT>bn4ZYG%MSZr0T%^y
zQ@Hcp1<<<qrxG5;v8cMQqC*XF^NO?O3njXC8c_Lb`T3Nd$LHa%PsH{a!=VT3G*!3Z
z;QS~bha!c$2Z>Hk*H(TUn4WK%ekG88mUQ>Rz2m{2A!uSO5=o2-u!~JbV?B}*5>n9i
zVP3?nWcj<7$tjtTMSgZxu&H)o_MLJAbZsNL$hq1)GdZj5YD{)PRnoKMw7m9iVs5?k
zaP!4B>8!%6QMzP4>iz8Oq^A_}!vgvuB4l9!m{|GpzC|~D<9$y0*A3+7@J~CPb7RZL
zMVCw|9WK(K9N<=VO~<1IoF4ve?5M47E-;?EoIr#lMD?The;St#MsVLhe4v6%feq>?
z7-Dz$xLm@6y*$Hv-<m!j%38u0je9^&Y0R1zQU>``!@@I_u#)+<^D<`T^Hn*e0=kt0
zxq4hme8ZH*NrbwYis*30n)H1y?nc*2ZpZLem-r5t>^r(mr^{+a@0GXZ2~FNGWsDGK
z?X{kH?q*e564lw|1xD-PaKH0>XZ(!eiQlcaG7B!6B|WoIf+JWsc<2S|(A_k!(RJ)?
zu4OcAnl4zX`c0t4cL2)`l%2DEEx_F7w)#A;`itMReSAOZujKBl6WQBB-*ei%nLlvO
zcYK9l7m=M)5qFnzwAQ~}NNYG^de{`k1TgbaU_Eovj4&JYUCJTELEwH94lj-x55?f<
zfZK9aop2;pvxE@Eqd5THIT~P-52B%E;Guy9YZ1Ihl{Oa+f!_>6j<$WyQy0ZKiW6|S
zNqY`{EGGkDES<d&rDaN{!%gK@KHXwApq7$M65x;0jg9c{W9)Tkga9WUKtj(kdaxMD
zk*2W_i%R<i#g?~TlFpFP;a^JQY8!l$VQ<;bOSwS0KP~GcZbC0k&>;{a)O9gk8KC6g
z@`EX|h3lg@B~!>LMbCDnJYHv0`dE&pW<^Pbo)i_4801+IAt5VTS&`m`f+6xV+Lo#O
zBn+&wG^1kmae-2t+v8Lov$Z5GGTp1L04uq62p`Pw^pv{BN3MRd>maz=Ofh0mfkBQH
zz4MsB-#(8hdeC}1C?cQ_k1x)>No6-=TW#kMt@CYMDp)<<cy0gpI^wM!w9yXcP33~@
zgnf@vCgqBaV#JhII85-SIUP<h#Vf+Zxh!tp#Hf(hpZ|GIxzz!GZNJ_3B9;b?YQGzS
z=$D89G<<s7JO!u4>!958K8^xSoVuq@!%FKX`gV#-Lb%tKicA3FlJbcmtgJt}5nDZp
zQiYLr(p1J=4<EQsyUGhI1F3dC<^C9LpS$neQ#S*~SPjs3#xdF!Efd~q=)b7*cC-Kv
zENH?+sv_=`p=p-Z{n7Z#q#u6)=Y96;wfJj?#$H=Fn9|%SwTM01DKp<~cudkk8;~rh
zqXu9p@7qTclTPn^J{?c`fe30ocX!=TzBUpu9zmjiPy0-If_Qgt<Ijo<a31=(V0Hxf
zzHm>G&Q%>;aPZwvFzMho>ww5Z@ad}~9bb2NeGhhbB3^Ga8g;H|kb?KPY<>f~I@_a)
zA*-)MfX0l@oxa+;7{*m5!E*Yh82RB^11G>Seg*{BZe7|H1=pL?&?y^{9<*@So(#ZK
zuaAslb7UDL5ca0VQEZesj_O+gZ&0nDF5C4(J!59<kDIQo#$xE~0TzjXjc@}$heH(I
zP$5W{g`H8%*KgC)Ec}6d&sj)<{bx6cKaLaTTvf=Qj_**3O9u3<!{H3pvs$Jn;{QGu
z!XJ$d15_wLNTUQdtQFGrI~jh`g#{@b3mHzk101(pV4}82VOB!w)%{{YmgD{Ji}cB)
zUI|oFxe0EbBT5rbkas;RdFMe&ihhEt{2?EB-ZLe&Nr(;$$R37iGcr+CQUG?P|9W(C
z%37rq=&LcHDz}|YDs@#9qmQVd=-IuIQb4&!|IKd8toHxIaz{}P#J`+Zdkdl^?ib7D
zwqS(F(hltk!qhvaFdxjz8W+<)q&C;FKzox&^J}Upfb9LgX|w=Bh3fo1)7a}#M4j#~
zawNT{f96Dv&&||(c2_Qh8KGl{NMy_dZ=-l(GS<sVE}oo>z8WPLlSNc?b+gY#XF`^N
zj~*vnyP;E<9YFP|N{%m*sQo9iIi}pPsq*oI+U|msH2=Ef+{WmhR_zjU7WoCfEBZez
zCt?4!+{Vx6ujMxBoL^=qlyo-V=M1fUM}8juj-t<rt889gOHdE}t^RDArDj4sWZmdj
zd)aXQnfuFm?2%`050V_@xcT@@QX~oYq^u65tBe(;OqgZ9wJ6x)XGfBeoBXXB*xWj9
z@tZkT1Fr}@cywS*-rFVVh)~VG<JBvY%OhDT&%c!lSRQ|*V8o5*8+MeOLR=6eJD3H$
z!f0QgN^uath1u5|eX_=SIeLF=U3d9#A~-F2x+#=@oaxtB-;dqLv645uplh!N17&V&
zu1%hpBoqJ0apX05yLZ?8C=ih!1D%;UgcOM9W^`BaNYAmy`I%B^L{o$sQ2-XOIZKw3
zWxd*7Uw(=`;MIrfU)g?3O|3kIxY;h)1mUjQPYqPS&nfl}|DnWL7@`IXHIGs8LBU&2
z8O_H`z0&^M@(YXqT29^kco+uL#9X+<jw15Nuo(?NZv0fyE0JvG?)h*b+~x=We+>GI
zVy2D92}BM?vlS6l+T;`ov7a=&Ek=^<<3~nLI$0l8T7Hk^kLsfTm*tXi4N!{dfw5Sc
z>6d{t&hwVBF5rc*@<jxj`@MzClYaAynK;kgMTGw2a(d1Y%C6OIFFV`I8P=vA`7kez
zUoT|?Ep792!;A*sus^_3mWz*I7@|5D1F{s%1Q#bRC@X2VQVeqQtfZzzSIFibxiRft
zo>=gOTAJXu2jxE}j6;=WSQ>CiCSj$b*yn}69!QPTl&irA4IVE`!cO&+bu$OA)MNRs
z$d~Q@X`>(3mFQ3i)Nf9?K26C545&H2W{3*(?@h6Q%w#ia8OGiW7e*Z=L&eMUTAupD
zB(oZX>Ar?O*uPY{++el4x{grIzg64ry2n%9p08)R*_!8jWdq5~=S{0FFcnpV9pfU@
z-mJgwh3`~uEQbJmzmR|5ST+qBQCG&`xoSq^8b)OJ{kO;P%I1Ueid^W1n9v`1m6xE(
z779QTo;AL%IZ0^*jN&K2L5sqtCCGKT+3zGw)+YV!^=<EPxZ{|R@-RSr`W>O=1_Rz-
zk$B%bD$E8EMj{mRoB2I?5By)B&Hd&#7a{**N96{4b>N(vnuFR%+^}}*j2+v7|KXCa
zKBjpjB9x>Kgq7(0d{K!oYgxuC-cp~h))(1cs5B$ge^qu~SAUUTN!p#Rd57Cy$~*La
z%Flrz(RW^#J=EHH<91$iti$cvpKZWk<IfHpqo>jJ>3psKr#ZHQ4rS-FjDy|MT3^E6
z+lKSN!Qdqqqc<yDz^)K<=BdMxkQG73e*NW+RTw^Gbz1;rZ6R!gkleuD!e5VX1N&n1
zfcwsR%>6RJ?$iKyv`U1o=N|o=X*^QOvHM`6xmy)K7xpPaOiM223=A~41=I;BYJX$h
z33`N}iyq52nI}m^T8znqKFph+JzQ<Kf|v%1c^de1pRv<nSJ<7Am3;b*04pxRuBwQ4
zBhwI!<b-Vs&K!(q8N$iQNYt$o!Iw6@Tv&+YlQ0i#u@1mhzD2Uhx*(3I0mwDZL{@bd
zetwFvo^cTfmv!MyR|QT@aFSeHVpdQdXL;(sCPSbY8`@$3-g}$XZ$MI%^Hx8WR!<IT
zOjcNF8BixPfa;M&j0k1m7?ui_vzOpa2!pnE*bL01l)#%nb3lcQT>HRGsd>2vqokbG
Rq~d(?nFin(eG&w;{sR^C@0I`n

literal 0
HcmV?d00001