From 4b83bfc3cf5e4d5bcece65f438560c130446b60a Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Fri, 28 Feb 2014 13:57:58 -0500 Subject: [PATCH 01/17] update documentation --- Gemfile | 4 +- Gemfile.lock | 46 +-- app/assets/images/channel_public_view.png | Bin 0 -> 112757 bytes app/assets/javascripts/sidebar.js | 9 +- app/assets/stylesheets/custom.css | 3 +- app/assets/stylesheets/sidebar.css | 21 +- app/controllers/application_controller.rb | 28 +- app/controllers/channels_controller.rb | 18 +- app/controllers/docs_controller.rb | 39 ++- app/controllers/feed_controller.rb | 8 +- app/models/channel.rb | 5 + app/models/feed.rb | 9 +- app/views/api_keys/_index.html.erb | 2 +- app/views/apps/index.html.erb | 8 +- app/views/channels/_import.html.erb | 6 +- app/views/channels/index.html.erb | 2 +- app/views/channels/public.html.erb | 46 ++- app/views/channels/watched.html.erb | 18 +- app/views/charts/index.html.erb | 7 +- app/views/docs/_sidebar.html.erb | 40 +++ app/views/docs/channels.html.erb | 127 ++++++++ app/views/docs/channels/_feed.html.erb | 305 ++++++++++++++++++ app/views/docs/channels/_field.html.erb | 213 ++++++++++++ app/views/docs/channels/_importer.html.erb | 8 + .../docs/channels/_public_index.html.erb | 149 +++++++++ app/views/docs/channels/_status.html.erb | 109 +++++++ app/views/docs/channels/_update.html.erb | 99 ++++++ app/views/docs/charts.html.erb | 89 +++++ app/views/docs/errors.html.erb | 75 +++++ app/views/docs/index.html.erb | 37 ++- app/views/docs/plugins.html.erb | 26 ++ app/views/docs/users.html.erb | 22 ++ app/views/docs/users/_show.html.erb | 59 ++++ app/views/docs/users/_user_channels.html.erb | 136 ++++++++ app/views/layouts/_footer.html.erb | 2 +- app/views/layouts/_header.html.erb | 4 +- app/views/pages/home.html.erb | 2 +- config/locales/en.yml | 5 + config/routes.rb | 7 +- ...k_API-c55761d06c28c72e17c9196391bf7fe4.jpg | Bin 0 -> 26303 bytes ...ation-270b79156b5690882822373ddc8f9201.css | 103 ++++++ ...on-270b79156b5690882822373ddc8f9201.css.gz | Bin 0 -> 27327 bytes ...ation-2f2fb70d48fef2c28ab99bc9c8b10358.css | 103 ++++++ ...on-2f2fb70d48fef2c28ab99bc9c8b10358.css.gz | Bin 0 -> 27333 bytes ...cation-506f026d64a1c2a4dea9c83a9b717f54.js | 6 + ...ion-506f026d64a1c2a4dea9c83a9b717f54.js.gz | Bin 0 -> 70538 bytes ...cation-9b11a71e00be785ae478ca2c1abd490b.js | 6 + ...ion-9b11a71e00be785ae478ca2c1abd490b.js.gz | Bin 0 -> 70532 bytes ...ation-ef64bf5dca3690cbfde3a17b34801823.css | 103 ++++++ ...on-ef64bf5dca3690cbfde3a17b34801823.css.gz | Bin 0 -> 27350 bytes ..._view-81af126139a236e81d91e5a5a76d603e.png | Bin 0 -> 112757 bytes .../eye-9175769cbdc94be2e5c44c59fdd3cbcd.png | Bin 0 -> 3294 bytes ..._gray-a465b55d9751d7d19801facf9d7d66b2.gif | Bin 0 -> 983 bytes ...g_red-87843b96f6a35694691fd624cd68a802.gif | Bin 0 -> 987 bytes ...front-44d3070595f891d9a2d88e00606c6325.png | Bin 0 -> 17717 bytes ...on_24-bf607f94a54f074c940a844771200b1b.png | Bin 0 -> 618 bytes ...n_rss-2687cbed842e6291c3a7b431f7bad93e.gif | Bin 0 -> 1008 bytes ...foBox-3dd7c57e5ed644dc9fa79014c10478ea.png | Bin 0 -> 837 bytes ...ocked-dd04ba8d213caf20f92028729f7d652b.png | Bin 0 -> 1882 bytes ...ic_32-40b058ba964e1b896725268b604c9c74.png | Bin 0 -> 4788 bytes ...ocked-d8d39a21ce887850ee0acfcaf6553d1c.png | Bin 0 -> 1652 bytes ...elete-1b8201e6714e82d1b6343aaa53e6ac91.png | Bin 0 -> 715 bytes ...40x40-8da1641e421200ea88d476a6040548f4.png | Bin 0 -> 260 bytes ...40x40-fbffa7c43cac930aa61ea7f15bcee131.png | Bin 0 -> 251 bytes ...0x100-dabfeb3662bfa05f655ed5056cce2124.png | Bin 0 -> 178 bytes ...1x400-ee77c8327f94bab46c89043ffce9444c.png | Bin 0 -> 104 bytes ...1x400-c1024fd9f647f2bf814e32f41e5632c3.png | Bin 0 -> 125 bytes ...1x400-6879b674aed618d3df27bd2027469557.png | Bin 0 -> 105 bytes ...0x100-61763bbe727affffa1bef63e1492d8a9.png | Bin 0 -> 3762 bytes ...1x100-f4dc124a7f6d39a9c8a496120c5e8273.png | Bin 0 -> 90 bytes ...1x100-970b8bb07ae918e7591662db33b7482e.png | Bin 0 -> 129 bytes ...6x240-6597c301cf369830bb7171882648f85e.png | Bin 0 -> 4369 bytes ...6x240-2c0de233993aabf35f961f7c39fa9263.png | Bin 0 -> 4369 bytes ...6x240-8e46c4f4ea98a986f4e877a51e4c15c5.png | Bin 0 -> 4369 bytes ...6x240-f6366c00a59227a55e14d94caaeea3f6.png | Bin 0 -> 4369 bytes ...6x240-13dbadd07134115add4ebe610d444859.png | Bin 0 -> 4369 bytes ...fest-27c2ec8d97bd8487cae01bba17cdddb9.json | 2 +- ...pdate-d4b1ef118189a8deb613efab4dd0de51.png | Bin 0 -> 13437 bytes ...rails-8a98a69213c3e39ca47a4f822df62bfb.png | Bin 0 -> 6646 bytes ...ading-0b2c43248624209936e2bf318c546c16.png | Bin 0 -> 565 bytes ..._logo-4a42dbecef9e2ab82564b14592f5d05b.png | Bin 0 -> 15370 bytes ..._main-20c93960eee4b916ed842f414bf7fea5.png | Bin 0 -> 132931 bytes ..._logo-dadc6a1037759f672179ca2d4e96ba6d.png | Bin 0 -> 1609 bytes public/files/importer_sample.csv | 6 + 84 files changed, 2037 insertions(+), 85 deletions(-) create mode 100644 app/assets/images/channel_public_view.png create mode 100644 app/views/docs/_sidebar.html.erb create mode 100644 app/views/docs/channels.html.erb create mode 100644 app/views/docs/channels/_feed.html.erb create mode 100644 app/views/docs/channels/_field.html.erb create mode 100644 app/views/docs/channels/_importer.html.erb create mode 100644 app/views/docs/channels/_public_index.html.erb create mode 100644 app/views/docs/channels/_status.html.erb create mode 100644 app/views/docs/channels/_update.html.erb create mode 100644 app/views/docs/charts.html.erb create mode 100644 app/views/docs/errors.html.erb create mode 100644 app/views/docs/plugins.html.erb create mode 100644 app/views/docs/users.html.erb create mode 100644 app/views/docs/users/_show.html.erb create mode 100644 app/views/docs/users/_user_channels.html.erb create mode 100644 public/assets/GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg create mode 100644 public/assets/application-270b79156b5690882822373ddc8f9201.css create mode 100644 public/assets/application-270b79156b5690882822373ddc8f9201.css.gz create mode 100644 public/assets/application-2f2fb70d48fef2c28ab99bc9c8b10358.css create mode 100644 public/assets/application-2f2fb70d48fef2c28ab99bc9c8b10358.css.gz create mode 100644 public/assets/application-506f026d64a1c2a4dea9c83a9b717f54.js create mode 100644 public/assets/application-506f026d64a1c2a4dea9c83a9b717f54.js.gz create mode 100644 public/assets/application-9b11a71e00be785ae478ca2c1abd490b.js create mode 100644 public/assets/application-9b11a71e00be785ae478ca2c1abd490b.js.gz create mode 100644 public/assets/application-ef64bf5dca3690cbfde3a17b34801823.css create mode 100644 public/assets/application-ef64bf5dca3690cbfde3a17b34801823.css.gz create mode 100644 public/assets/channel_public_view-81af126139a236e81d91e5a5a76d603e.png create mode 100644 public/assets/eye-9175769cbdc94be2e5c44c59fdd3cbcd.png create mode 100644 public/assets/flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif create mode 100644 public/assets/flag_red-87843b96f6a35694691fd624cd68a802.gif create mode 100644 public/assets/front-44d3070595f891d9a2d88e00606c6325.png create mode 100644 public/assets/icon_location_24-bf607f94a54f074c940a844771200b1b.png create mode 100644 public/assets/icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif create mode 100755 public/assets/icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png create mode 100644 public/assets/icons/Locked-dd04ba8d213caf20f92028729f7d652b.png create mode 100644 public/assets/icons/Public_32-40b058ba964e1b896725268b604c9c74.png create mode 100644 public/assets/icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png create mode 100755 public/assets/icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png create mode 100755 public/assets/images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png create mode 100755 public/assets/images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png create mode 100755 public/assets/images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png create mode 100755 public/assets/images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png create mode 100755 public/assets/images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png create mode 100755 public/assets/images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png create mode 100755 public/assets/images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png create mode 100755 public/assets/images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png create mode 100755 public/assets/images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png create mode 100755 public/assets/images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png create mode 100755 public/assets/images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png create mode 100755 public/assets/images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png create mode 100755 public/assets/images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png create mode 100755 public/assets/images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png create mode 100644 public/assets/my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png create mode 100644 public/assets/rails-8a98a69213c3e39ca47a4f822df62bfb.png create mode 100644 public/assets/shading-0b2c43248624209936e2bf318c546c16.png create mode 100644 public/assets/social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png create mode 100644 public/assets/social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png create mode 100644 public/assets/thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png create mode 100644 public/files/importer_sample.csv diff --git a/Gemfile b/Gemfile index a364c6a..973c847 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,6 @@ source 'http://rubygems.org' -gem 'rails', '4.0.2' +gem 'rails', '4.0.3' gem 'jquery-rails', '3.0.4' gem 'rails_autolink' gem 'mysql2' @@ -30,7 +30,7 @@ gem 'rack-utf8_sanitizer' gem 'newrelic_rpm' gem 'actionpack-xml_parser' -# To use debugger +# to use debugger # gem 'ruby-debug' # assets diff --git a/Gemfile.lock b/Gemfile.lock index 9902680..dd16c75 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -17,27 +17,27 @@ GEM remote: http://rubygems.org/ specs: ZenTest (4.9.5) - actionmailer (4.0.2) - actionpack (= 4.0.2) + actionmailer (4.0.3) + actionpack (= 4.0.3) mail (~> 2.5.4) - actionpack (4.0.2) - activesupport (= 4.0.2) + actionpack (4.0.3) + activesupport (= 4.0.3) builder (~> 3.1.0) erubis (~> 2.7.0) rack (~> 1.5.2) rack-test (~> 0.6.2) actionpack-xml_parser (1.0.1) actionpack (>= 4.0.0.rc1) - activemodel (4.0.2) - activesupport (= 4.0.2) + activemodel (4.0.3) + activesupport (= 4.0.3) builder (~> 3.1.0) - activerecord (4.0.2) - activemodel (= 4.0.2) + activerecord (4.0.3) + activemodel (= 4.0.3) activerecord-deprecated_finders (~> 1.0.2) - activesupport (= 4.0.2) + activesupport (= 4.0.3) arel (~> 4.0.0) activerecord-deprecated_finders (1.0.3) - activesupport (4.0.2) + activesupport (4.0.3) i18n (~> 0.6, >= 0.6.4) minitest (~> 4.2) multi_json (~> 1.3) @@ -51,7 +51,7 @@ GEM annotate (2.6.1) activerecord (>= 2.3.0) rake (>= 0.8.7) - arel (4.0.1) + arel (4.0.2) atomic (1.1.14) authlogic (3.3.0) activerecord (>= 3.2) @@ -157,7 +157,7 @@ GEM nokogiri (1.6.1) mini_portile (~> 0.5.0) oauth (0.4.7) - polyglot (0.3.3) + polyglot (0.3.4) quiet_assets (1.0.2) railties (>= 3.1, < 5.0) rack (1.5.2) @@ -167,19 +167,19 @@ GEM rack (>= 1.0) rack-utf8_sanitizer (1.1.0) rack (~> 1.0) - rails (4.0.2) - actionmailer (= 4.0.2) - actionpack (= 4.0.2) - activerecord (= 4.0.2) - activesupport (= 4.0.2) + rails (4.0.3) + actionmailer (= 4.0.3) + actionpack (= 4.0.3) + activerecord (= 4.0.3) + activesupport (= 4.0.3) bundler (>= 1.3.0, < 2.0) - railties (= 4.0.2) + railties (= 4.0.3) sprockets-rails (~> 2.0.0) rails_autolink (1.1.5) rails (> 3.1) - railties (4.0.2) - actionpack (= 4.0.2) - activesupport (= 4.0.2) + railties (4.0.3) + actionpack (= 4.0.3) + activesupport (= 4.0.3) rake (>= 0.8.7) thor (>= 0.18.1, < 2.0) rake (10.1.1) @@ -228,7 +228,7 @@ GEM rack-protection (~> 1.4) tilt (~> 1.3, >= 1.3.4) spork (0.9.2) - sprockets (2.10.1) + sprockets (2.11.0) hike (~> 1.2) multi_json (~> 1.0) rack (~> 1.0) @@ -314,7 +314,7 @@ DEPENDENCIES nokogiri quiet_assets rack-utf8_sanitizer - rails (= 4.0.2) + rails (= 4.0.3) rails_autolink redis resque-scheduler (= 2.3.1) diff --git a/app/assets/images/channel_public_view.png b/app/assets/images/channel_public_view.png new file mode 100644 index 0000000000000000000000000000000000000000..fa760f5717225de03364ce2d61366083751eb6c9 GIT binary patch literal 112757 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 0).paginate :page => params[:page] + # get channels by ids if params[:channel_ids].present? flash[:notice] = t(:selected_channels) @channels = Channel.public_viewable.by_array(params[:channel_ids]).order('ranking desc, updated_at DESC').paginate :page => params[:page] + # get channels that match a user + elsif params[:username].present? + flash[:notice] = "#{t(:user).capitalize}: #{params[:username]}" + searched_user = User.find_by_login(params[:username]) + @channels = searched_user.channels.public_viewable.active.order('ranking desc, updated_at DESC').paginate :page => params[:page] if searched_user.present? # get channels that match a tag elsif params[:tag].present? flash[:notice] = "#{t(:tag).capitalize}: #{params[:tag]}" @@ -40,6 +49,7 @@ class ChannelsController < ApplicationController # normal channel list else flash[:notice] = t(:featured_channels) + respond_with_error(:error_resource_not_found) and return if params[:page] == '0' @channels = Channel.public_viewable.active.order('ranking desc, updated_at DESC').paginate :page => params[:page] end @@ -311,8 +321,12 @@ class ChannelsController < ApplicationController # if there is a talkback_key but no command respond_with_blank and return if params[:talkback_key].present? && command.blank? - # normal route, respond with the entry id of the feed - render :text => status + # normal route, respond with the feed + respond_to do |format| + format.html { render :text => status } + format.json { render :json => feed.to_json } + format.xml { render :xml => feed.to_xml(Feed.public_options) } + end and return end # import view diff --git a/app/controllers/docs_controller.rb b/app/controllers/docs_controller.rb index 3a4b123..c3afcb3 100644 --- a/app/controllers/docs_controller.rb +++ b/app/controllers/docs_controller.rb @@ -1,6 +1,43 @@ class DocsController < ApplicationController + before_filter :set_support_menu - def index; ;end + def index; ; end + def errors; ; end + def tweetcontrol; ; end + def plugins; ; end + def importer; ; end + def charts; ; end + def users; ; end + + def channels + # default values + @channel_api_key = 'XXXXXXXXXXXXXXXX' + + # if user is signed in + if current_user && current_user.channels.any? + @channel_api_key = current_user.channels.order('updated_at desc').first.write_api_key + end + end + + def thinghttp + # default values + @thinghttp_api_key = 'XXXXXXXXXXXXXXXX' + + # if user is signed in + if current_user && current_user.thinghttps.any? + @thinghttp_api_key = current_user.thinghttps.order('updated_at desc').first.api_key + end + end + + def thingtweet + # default values + @thingtweet_api_key = 'XXXXXXXXXXXXXXXX' + + # if user is signed in + if current_user && current_user.twitter_accounts.any? + @thingtweet_api_key = current_user.twitter_accounts.order('updated_at desc').first.api_key + end + end def talkback # default values diff --git a/app/controllers/feed_controller.rb b/app/controllers/feed_controller.rb index 8bbf376..669e01d 100644 --- a/app/controllers/feed_controller.rb +++ b/app/controllers/feed_controller.rb @@ -194,13 +194,13 @@ class FeedController < ApplicationController output = @feed.to_xml elsif params[:format] == 'csv' @csv_headers = Feed.select_options(@channel, params) - elsif (params[:format] == 'txt' or params[:format] == 'text') + elsif (params[:format] == 'txt' || params[:format] == 'text' || params[:format] == 'html') output = add_prepend_append(@feed["field#{params[:field_id]}"]) else output = @feed.to_json - end - # else set error code + + # else set error code else if params[:format] == 'xml' output = bad_feed_xml @@ -211,7 +211,7 @@ class FeedController < ApplicationController # output data in proper format respond_to do |format| - format.html { render :json => output } + format.html { render :text => output } format.json { render :json => output, :callback => params[:callback] } format.xml { render :xml => output } format.csv diff --git a/app/models/channel.rb b/app/models/channel.rb index f1597e6..d6bba02 100644 --- a/app/models/channel.rb +++ b/app/models/channel.rb @@ -81,6 +81,11 @@ class Channel < ActiveRecord::Base cattr_reader :per_page @@per_page = 15 + # write key for a channel + def write_api_key + self.api_keys.where(:write_flag => true).first.api_key + end + # select options def select_options only = [:name, :created_at, :updated_at, :id, :last_entry_id] diff --git a/app/models/feed.rb b/app/models/feed.rb index f7a4563..c9f12a4 100644 --- a/app/models/feed.rb +++ b/app/models/feed.rb @@ -33,6 +33,13 @@ class Feed < ActiveRecord::Base attr_readonly :created_at + # for to_xml, return only the public attributes + def self.public_options + { + :except => [:id, :updated_at] + } + end + # only output these fields for feed def self.select_options(channel, params) only = [:created_at] @@ -96,7 +103,7 @@ class Feed < ActiveRecord::Base # custom json output def as_json(options = {}) - super(options.merge(:except => [:updated_at, :id])) + super(Feed.public_options) end # check if a field value is a number diff --git a/app/views/api_keys/_index.html.erb b/app/views/api_keys/_index.html.erb index 9240fa9..1e1675e 100644 --- a/app/views/api_keys/_index.html.erb +++ b/app/views/api_keys/_index.html.erb @@ -39,7 +39,7 @@ diff --git a/app/views/devise/confirmations/new.html.erb b/app/views/devise/confirmations/new.html.erb new file mode 100644 index 0000000..85ab304 --- /dev/null +++ b/app/views/devise/confirmations/new.html.erb @@ -0,0 +1,13 @@ +

Resend confirmation instructions

+ +<%= form_for(resource, :as => resource_name, :url => confirmation_path(resource_name), :html => { :method => :post }) do |f| %> + <%= devise_error_messages! %> + +
<%= f.label :login %>
+ <%= f.text_field :login, :autofocus => true %>
+ +
<%= f.submit "Resend confirmation instructions" %>
+<% end %> + +<%= render "devise/shared/links" %> + diff --git a/app/views/devise/mailer/confirmation_instructions.html.erb b/app/views/devise/mailer/confirmation_instructions.html.erb new file mode 100644 index 0000000..36670f9 --- /dev/null +++ b/app/views/devise/mailer/confirmation_instructions.html.erb @@ -0,0 +1,5 @@ +

Welcome <%= @email %>!

+ +

You can confirm your account email through the link below:

+ +

<%= link_to 'Confirm my account', confirmation_url(@resource, :confirmation_token => @token) %>

diff --git a/app/views/devise/mailer/reset_password_instructions.html.erb b/app/views/devise/mailer/reset_password_instructions.html.erb new file mode 100644 index 0000000..93de6d0 --- /dev/null +++ b/app/views/devise/mailer/reset_password_instructions.html.erb @@ -0,0 +1,8 @@ +

Hello <%= @resource.email %>!

+ +

Someone has requested a link to change your password. You can do this through the link below.

+ +

<%= link_to 'Change my password', edit_password_url(@resource, :reset_password_token => @token) %>

+ +

If you didn't request this, please ignore this email.

+

Your password won't change until you access the link above and create a new one.

diff --git a/app/views/devise/mailer/unlock_instructions.html.erb b/app/views/devise/mailer/unlock_instructions.html.erb new file mode 100644 index 0000000..f59615f --- /dev/null +++ b/app/views/devise/mailer/unlock_instructions.html.erb @@ -0,0 +1,7 @@ +

Hello <%= @resource.email %>!

+ +

Your account has been locked due to an excessive number of unsuccessful sign in attempts.

+ +

Click the link below to unlock your account:

+ +

<%= link_to 'Unlock my account', unlock_url(@resource, :unlock_token => @token) %>

diff --git a/app/views/devise/passwords/edit.html.erb b/app/views/devise/passwords/edit.html.erb new file mode 100644 index 0000000..61f1ca1 --- /dev/null +++ b/app/views/devise/passwords/edit.html.erb @@ -0,0 +1,28 @@ +
+
+ + + + <%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :put, :class => 'form-horizontal' }) do |f| %> + <%= devise_error_messages! %> + <%= f.hidden_field :reset_password_token %> + +
+ +
<%= f.password_field :password, :autofocus => true, :class => 'form-control' %>
+
+ +
+ +
<%= f.password_field :password_confirmation, :class => 'form-control' %>
+
+ +
+ +

<%= f.submit t(:password_change), :class => 'btn btn-primary' %>

+
+ + <% end %> +
+
+ diff --git a/app/views/devise/passwords/new.html.erb b/app/views/devise/passwords/new.html.erb new file mode 100644 index 0000000..276b711 --- /dev/null +++ b/app/views/devise/passwords/new.html.erb @@ -0,0 +1,35 @@ +
+ + + +
+ + <%= t(:password_forgot_message) %> + +

+ + <%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post, :class => 'form-horizontal' }) do |f| %> + <%= devise_error_messages! %> + + +
+ +
<%= f.text_field :login, :class => 'form-control' %>
+
+ + +
+

<%= f.submit t(:submit), :class => 'btn btn-primary' %>

+
+ + <% end %> + +
+ +
+ + + + diff --git a/app/views/devise/registrations/edit.html.erb b/app/views/devise/registrations/edit.html.erb new file mode 100644 index 0000000..7dd348d --- /dev/null +++ b/app/views/devise/registrations/edit.html.erb @@ -0,0 +1,30 @@ +

Edit <%= resource_name.to_s.humanize %>

+ +<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %> + <%= devise_error_messages! %> + +
<%= f.label :login %>
+ <%= f.text_field :login, :autofocus => true %>
+ + <% if devise_mapping.confirmable? && resource.pending_reconfirmation? %> +
Currently waiting confirmation for: <%= resource.unconfirmed_email %>
+ <% end %> + +
<%= f.label :password %> (leave blank if you don't want to change it)
+ <%= f.password_field :password, :autocomplete => "off" %>
+ +
<%= f.label :password_confirmation %>
+ <%= f.password_field :password_confirmation %>
+ +
<%= f.label :current_password %> (we need your current password to confirm your changes)
+ <%= f.password_field :current_password %>
+ +
<%= f.submit "Update" %>
+<% end %> + +

Cancel my account

+ +

Unhappy? <%= button_to "Cancel my account", registration_path(resource_name), :data => { :confirm => "Are you sure?" }, :method => :delete %>

+ +<%= link_to "Back", :back %> + diff --git a/app/views/devise/registrations/new.html.erb b/app/views/devise/registrations/new.html.erb new file mode 100644 index 0000000..b13773e --- /dev/null +++ b/app/views/devise/registrations/new.html.erb @@ -0,0 +1,51 @@ +
+
+ + + + <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => {:class => 'form-horizontal'}) do |f| %> + <%= devise_error_messages! %> + + +
+ +
<%= f.text_field :login, :class => 'form-control' %>
+
+ +
+ +
<%= f.text_field :email, :class => 'form-control' %>
+
+ +
+ +
+

+ <%= time_zone_select 'user', 'time_zone', nil, {:default => 'Eastern Time (US & Canada)'}, {:class => 'form-control'} %> +

+
+
+ +
+ +
<%= f.password_field :password, :class => 'form-control' %>
+
+ +
+ +
<%= f.password_field :password_confirmation, :class => 'form-control' %>
+
+ +
+ +

<%= f.submit t(:create_account), :id => "user_submit", :class => 'btn btn-primary' %>

+
+ + <% end %> +
+
+ + + diff --git a/app/views/devise/sessions/new.html.erb b/app/views/devise/sessions/new.html.erb new file mode 100644 index 0000000..df35fa1 --- /dev/null +++ b/app/views/devise/sessions/new.html.erb @@ -0,0 +1,57 @@ +
+
+ + + + <% if @failed %><%= t(:signin_try_again) %>

<% end %> + <% if @mail_message.present? %><%= @mail_message %>

<% end %> + + <%= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { :id => 'loginform', :class => 'form-horizontal' }) do |f| %> + + +
+ +
<%= f.text_field :login, :value => cookies['user_id'], :class => 'form-control' %>
+
+ +
+ +
+ <%= f.password_field :password, :class => 'form-control' %> + <%= link_to t(:forgot), new_user_password_path, :id => 'forgot_password' %> +
+
+ +
+
+
+ +
+
+
+ +
+

<%= f.submit t(:signin), :class => 'btn btn-primary' %>

+
+ <% end %> + +
+
+ + + diff --git a/app/views/devise/shared/_links.erb b/app/views/devise/shared/_links.erb new file mode 100644 index 0000000..8045cf6 --- /dev/null +++ b/app/views/devise/shared/_links.erb @@ -0,0 +1,12 @@ +<%- if controller_name != 'sessions' %> + <%= link_to t(:signin), new_session_path(resource_name) %>
+<% end -%> + +<%- if devise_mapping.registerable? && controller_name != 'registrations' %> + <%= link_to t(:signup), new_registration_path(resource_name) %>
+<% end -%> + +<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %> + <%= link_to t(:password_forgot), new_password_path(resource_name) %>
+<% end -%> + diff --git a/app/views/devise/unlocks/new.html.erb b/app/views/devise/unlocks/new.html.erb new file mode 100644 index 0000000..8f6cfeb --- /dev/null +++ b/app/views/devise/unlocks/new.html.erb @@ -0,0 +1,12 @@ +

Resend unlock instructions

+ +<%= form_for(resource, :as => resource_name, :url => unlock_path(resource_name), :html => { :method => :post }) do |f| %> + <%= devise_error_messages! %> + +
<%= f.label :email %>
+ <%= f.email_field :email, :autofocus => true %>
+ +
<%= f.submit "Resend unlock instructions" %>
+<% end %> + +<%= render "devise/shared/links" %> diff --git a/app/views/layouts/_header.html.erb b/app/views/layouts/_header.html.erb index 43d4901..7eb3e2d 100644 --- a/app/views/layouts/_header.html.erb +++ b/app/views/layouts/_header.html.erb @@ -58,7 +58,7 @@
  • <%= link_to t(:signout), logout_path %>
  • <% else %>
  • <%= link_to t(:signin), login_path %>
  • -
  • <%= link_to t(:signup), new_account_path %>
  • +
  • <%= link_to t(:signup), new_user_registration_path %>
  • <% end %> diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 9929d8c..48221ec 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -23,6 +23,12 @@
    <%= render 'layouts/header' %>
    + <% if notice.present? %> +

    <%= notice %>X

    + <% end %> + <% if alert.present? %> +

    <%= alert %>X

    + <% end %> <%= yield %>
    diff --git a/app/views/mailer/password_reset.html.erb b/app/views/mailer/password_reset.html.erb index e22845e..563cbba 100644 --- a/app/views/mailer/password_reset.html.erb +++ b/app/views/mailer/password_reset.html.erb @@ -6,11 +6,11 @@

    <%= t(:password_reset_message1) %> -
    +
    <%= t(:password_reset_message2) %> -
    +
    <%= t(:password_reset_message3) %> -

    +

    <%= @webpage %>

    diff --git a/app/views/pages/export.html.erb b/app/views/pages/export.html.erb index 70c5af6..8519637 100644 --- a/app/views/pages/export.html.erb +++ b/app/views/pages/export.html.erb @@ -111,6 +111,6 @@ -
    +
    diff --git a/app/views/pages/headers.html.erb b/app/views/pages/headers.html.erb index dba94f3..2a8210c 100644 --- a/app/views/pages/headers.html.erb +++ b/app/views/pages/headers.html.erb @@ -1,7 +1,8 @@ <% for header in request.env.select {|k,v| k.match("^HTTP.*")} %> - + <% end %>
    <%=header[0].split('_',2)[1]%><%=header[1]%><%=header[0].split('_',2)[1]%><%=header[1]%>
    + diff --git a/app/views/pages/social_home.html.erb b/app/views/pages/social_home.html.erb index 7786c8f..3e6cc30 100644 --- a/app/views/pages/social_home.html.erb +++ b/app/views/pages/social_home.html.erb @@ -87,10 +87,10 @@ <% end %>

    the social sensor network is forming.

    -

    We have one thing in common. At almost all times we are connected to the web.
    +

    We have one thing in common. At almost all times we are connected to the web.
    The Social Sensor Network allows everyone to report and share data in an open and meaningful way.

    -
    +
    @@ -128,12 +128,12 @@ } -
    -
    +
    +
    demo channels -
    +
    IRS Refunds Frozen Online Poker Money diff --git a/app/views/pipes/index.html.erb b/app/views/pipes/index.html.erb index bda2e6c..ecedff9 100644 --- a/app/views/pipes/index.html.erb +++ b/app/views/pipes/index.html.erb @@ -1,7 +1,7 @@

    Pipes

    <%= link_to 'New Pipe', new_pipe_path %> -

    +

    @@ -15,5 +15,5 @@ <% end %>
    IDNameSlugURLDate
    -
    +
    <%= will_paginate @pipes %> diff --git a/app/views/plugins/edit.html.erb b/app/views/plugins/edit.html.erb index a08db2b..0bea223 100644 --- a/app/views/plugins/edit.html.erb +++ b/app/views/plugins/edit.html.erb @@ -48,7 +48,7 @@ <% end %> -

    +

    <%= t(:plugin_delete_message) %>

    <%= button_to t(:plugin_delete), plugin_path(@plugin.id), :method => 'delete', :data => { :confirm => t(:confirm_plugin_delete) }, :class => 'btn btn-danger' %> diff --git a/app/views/plugins/index.html.erb b/app/views/plugins/index.html.erb index ae8a6cc..a0d90e0 100644 --- a/app/views/plugins/index.html.erb +++ b/app/views/plugins/index.html.erb @@ -23,7 +23,7 @@ -

    +

    <% end %> <%= form_for :plugin do |p| %> diff --git a/app/views/status/_recent.html.erb b/app/views/status/_recent.html.erb index a5b1adc..765d942 100644 --- a/app/views/status/_recent.html.erb +++ b/app/views/status/_recent.html.erb @@ -8,8 +8,8 @@
    <% @statuses.each do |r| %> -
    <%= r.status %>
    <%= r.created_at %>
    -
    +
    <%= r.status %>
    <%= r.created_at %>
    +
    <% end %>
    + <%= javascript_include_tag 'application' %> ;'> -
    +
    + <%= image_tag 'ajax-loader.gif', :style => "margin: auto; display: block;" %> +
    diff --git a/app/views/devise/passwords/new.html.erb b/app/views/devise/passwords/new.html.erb index 276b711..d05e5c5 100644 --- a/app/views/devise/passwords/new.html.erb +++ b/app/views/devise/passwords/new.html.erb @@ -10,11 +10,10 @@ <%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post, :class => 'form-horizontal' }) do |f| %> <%= devise_error_messages! %> -
    -
    <%= f.text_field :login, :class => 'form-control' %>
    +
    <%= f.text_field :email, :class => 'form-control' %>
    @@ -30,6 +29,6 @@ diff --git a/app/views/layouts/_header.html.erb b/app/views/layouts/_header.html.erb index 7eb3e2d..4746c89 100644 --- a/app/views/layouts/_header.html.erb +++ b/app/views/layouts/_header.html.erb @@ -34,6 +34,9 @@
  • <%= link_to t(:profile_edit), edit_profile_path %>
  • + <% if current_admin_user.present? %> +
  • <%= link_to t(:admin), "/admin" %>
  • + <% end %> <% else %>
  • ><%= link_to t(:channels), public_channels_path %>
  • diff --git a/config/initializers/active_admin.rb b/config/initializers/active_admin.rb new file mode 100644 index 0000000..e231b50 --- /dev/null +++ b/config/initializers/active_admin.rb @@ -0,0 +1,240 @@ +ActiveAdmin.setup do |config| + + # == Site Title + # + # Set the title that is displayed on the main layout + # for each of the active admin pages. + # + config.site_title = "Thingspeak" + + # Set the link url for the title. For example, to take + # users to your main site. Defaults to no link. + # + # config.site_title_link = "/" + + # Set an optional image to be displayed for the header + # instead of a string (overrides :site_title) + # + # Note: Aim for an image that's 21px high so it fits in the header. + # + # config.site_title_image = "logo.png" + + # == Default Namespace + # + # Set the default namespace each administration resource + # will be added to. + # + # eg: + # config.default_namespace = :hello_world + # + # This will create resources in the HelloWorld module and + # will namespace routes to /hello_world/* + # + # To set no namespace by default, use: + # config.default_namespace = false + # + # Default: + # config.default_namespace = :admin + # + # You can customize the settings for each namespace by using + # a namespace block. For example, to change the site title + # within a namespace: + # + # config.namespace :admin do |admin| + # admin.site_title = "Custom Admin Title" + # end + # + # This will ONLY change the title for the admin section. Other + # namespaces will continue to use the main "site_title" configuration. + + # == User Authentication + # + # Active Admin will automatically call an authentication + # method in a before filter of all controller actions to + # ensure that there is a currently logged in admin user. + # + # This setting changes the method which Active Admin calls + # within the controller. + config.authentication_method = :authenticate_admin_user! + + # == User Authorization + # + # Active Admin will automatically call an authorization + # method in a before filter of all controller actions to + # ensure that there is a user with proper rights. You can use + # CanCanAdapter or make your own. Please refer to documentation. + # config.authorization_adapter = ActiveAdmin::CanCanAdapter + + # You can customize your CanCan Ability class name here. + # config.cancan_ability_class = "Ability" + + # You can specify a method to be called on unauthorized access. + # This is necessary in order to prevent a redirect loop which happens + # because, by default, user gets redirected to Dashboard. If user + # doesn't have access to Dashboard, he'll end up in a redirect loop. + # Method provided here should be defined in application_controller.rb. + # config.on_unauthorized_access = :access_denied + + # == Current User + # + # Active Admin will associate actions with the current + # user performing them. + # + # This setting changes the method which Active Admin calls + # to return the currently logged in user. + config.current_user_method = :current_admin_user + + + # == Logging Out + # + # Active Admin displays a logout link on each screen. These + # settings configure the location and method used for the link. + # + # This setting changes the path where the link points to. If it's + # a string, the strings is used as the path. If it's a Symbol, we + # will call the method to return the path. + # + # Default: + config.logout_link_path = :destroy_admin_user_session_path + + # This setting changes the http method used when rendering the + # link. For example :get, :delete, :put, etc.. + # + # Default: + # config.logout_link_method = :get + + + # == Root + # + # Set the action to call for the root path. You can set different + # roots for each namespace. + # + # Default: + # config.root_to = 'dashboard#index' + + + # == Admin Comments + # + # This allows your users to comment on any resource registered with Active Admin. + # + # You can completely disable comments: + # config.allow_comments = false + # + # You can disable the menu item for the comments index page: + config.show_comments_in_menu = false + # + # You can change the name under which comments are registered: + # config.comments_registration_name = 'AdminComment' + + + # == Batch Actions + # + # Enable and disable Batch Actions + # + config.batch_actions = true + + + # == Controller Filters + # + # You can add before, after and around filters to all of your + # Active Admin resources and pages from here. + # + # config.before_filter :do_something_awesome + + + # == Setting a Favicon + # + # config.favicon = '/assets/favicon.ico' + + + # == Removing Breadcrumbs + # + # Breadcrumbs are enabled by default. You can customize them for individual + # resources or you can disable them globally from here. + # + # config.breadcrumb = false + + + # == Register Stylesheets & Javascripts + # + # We recommend using the built in Active Admin layout and loading + # up your own stylesheets / javascripts to customize the look + # and feel. + # + # To load a stylesheet: + # config.register_stylesheet 'my_stylesheet.css' + # + # You can provide an options hash for more control, which is passed along to stylesheet_link_tag(): + # config.register_stylesheet 'my_print_stylesheet.css', :media => :print + # + # To load a javascript file: + # config.register_javascript 'my_javascript.js' + + + # == CSV options + # + # Set the CSV builder separator + # config.csv_options = { :col_sep => ';' } + # + # Force the use of quotes + # config.csv_options = { :force_quotes => true } + + + # == Menu System + # + # You can add a navigation menu to be used in your application, or configure a provided menu + config.namespace :admin do |admin| + admin.build_menu :utility_navigation do |menu| + admin.add_logout_button_to_menu menu + end + end + + # If you wanted to add a static menu item to the default menu provided: + # + # config.namespace :admin do |admin| + # admin.build_menu :default do |menu| + # menu.add label: "My Great Website", url: "http://www.mygreatwebsite.com", html_options: { target: :blank } + # end + # end + + + # == Download Links + # + # You can disable download links on resource listing pages, + # or customize the formats shown per namespace/globally + # + # To disable/customize for the :admin namespace: + # + # config.namespace :admin do |admin| + # + # # Disable the links entirely + # admin.download_links = false + # + # # Only show XML & PDF options + # admin.download_links = [:xml, :pdf] + # + # # Enable/disable the links based on block + # # (for example, with cancan) + # admin.download_links = proc { can?(:view_download_links) } + # + # end + + + # == Pagination + # + # Pagination is enabled by default for all resources. + # You can control the default per page count for all resources here. + # + # config.default_per_page = 30 + + + # == Filters + # + # By default the index screen includes a “Filters” sidebar on the right + # hand side with a filter for each attribute of the registered model. + # You can enable or disable them for all resources here. + # + # config.filters = false + +end + diff --git a/config/initializers/devise.rb b/config/initializers/devise.rb index fafc536..f3064c3 100644 --- a/config/initializers/devise.rb +++ b/config/initializers/devise.rb @@ -179,7 +179,7 @@ Devise.setup do |config| # ==> Configuration for :recoverable # # Defines which key will be used when recovering the password for an account - config.reset_password_keys = [ :login ] + config.reset_password_keys = [ :email ] # Time interval you can reset your password with a reset password key. # Don't put a too small interval or your users won't have the time to diff --git a/config/initializers/kaminari.rb b/config/initializers/kaminari.rb new file mode 100644 index 0000000..7f463d6 --- /dev/null +++ b/config/initializers/kaminari.rb @@ -0,0 +1,4 @@ +Kaminari.configure do |config| + config.page_method_name = :per_page_kaminari +end + diff --git a/config/routes.rb b/config/routes.rb index 50000ec..30f6990 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,5 +1,9 @@ Thingspeak::Application.routes.draw do + # admin routes + devise_for :admin_users, ActiveAdmin::Devise.config + ActiveAdmin.routes(self) + # main data posts using this route match 'update', :to => 'channels#post_data', :via => ((GET_SUPPORT) ? [:get, :post] : :post) match 's/update', :to => 'channels#post_data', :via => [:get, :post] @@ -180,16 +184,10 @@ Thingspeak::Application.routes.draw do resources :apps, :only => ['index'] - get 'admin', :to => 'admin#index', :as => 'admin' - namespace :admin do - resources :users - resources :channels - resources :twitter_accounts - resources :thinghttps - resources :devices - resources :failedlogins - resources :emails - end + # admin signups by day + get 'admin/signups', :as => 'admin_signups', :to => 'admin/users#signups' + # admin list of all email addresses + get 'admin/emails', :as => 'admin_emails', :to => 'admin/users#emails' # app shortcuts get 'apps/thingtweet', :to => 'thingtweets#index' diff --git a/db/migrate/20140320200306_devise_create_admin_users.rb b/db/migrate/20140320200306_devise_create_admin_users.rb new file mode 100644 index 0000000..05f47d7 --- /dev/null +++ b/db/migrate/20140320200306_devise_create_admin_users.rb @@ -0,0 +1,49 @@ +class DeviseCreateAdminUsers < ActiveRecord::Migration + def migrate(direction) + super + # Create a default user + # AdminUser.create!(email: 'admin@example.com', password: 'password', password_confirmation: 'password') if direction == :up + end + + def change + create_table(:admin_users) do |t| + ## Database authenticatable + t.string :email, :null => false, :default => "" + t.string :encrypted_password, :null => false, :default => "" + + ## Recoverable + t.string :reset_password_token + t.datetime :reset_password_sent_at + + ## Rememberable + t.datetime :remember_created_at + + ## Trackable + t.integer :sign_in_count, :default => 0, :null => false + t.datetime :current_sign_in_at + t.datetime :last_sign_in_at + t.string :current_sign_in_ip + t.string :last_sign_in_ip + + ## Confirmable + # t.string :confirmation_token + # t.datetime :confirmed_at + # t.datetime :confirmation_sent_at + # t.string :unconfirmed_email # Only if using reconfirmable + + ## Lockable + # t.integer :failed_attempts, :default => 0, :null => false # Only if lock strategy is :failed_attempts + # t.string :unlock_token # Only if unlock strategy is :email or :both + # t.datetime :locked_at + + + t.timestamps + end + + add_index :admin_users, :email, :unique => true + add_index :admin_users, :reset_password_token, :unique => true + # add_index :admin_users, :confirmation_token, :unique => true + # add_index :admin_users, :unlock_token, :unique => true + end +end + diff --git a/db/migrate/20140320200307_create_active_admin_comments.rb b/db/migrate/20140320200307_create_active_admin_comments.rb new file mode 100644 index 0000000..36ee970 --- /dev/null +++ b/db/migrate/20140320200307_create_active_admin_comments.rb @@ -0,0 +1,20 @@ +class CreateActiveAdminComments < ActiveRecord::Migration + def self.up + create_table :active_admin_comments do |t| + t.string :namespace + t.text :body + t.string :resource_id, null: false, limit: 50 + t.string :resource_type, null: false, limit: 50 + t.references :author, polymorphic: true + t.timestamps + end + add_index :active_admin_comments, [:namespace] + add_index :active_admin_comments, [:author_type, :author_id] + add_index :active_admin_comments, [:resource_type, :resource_id] + end + + def self.down + drop_table :active_admin_comments + end +end + diff --git a/db/schema.rb b/db/schema.rb index 92774ea..c1ac184 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,40 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20140306013304) do +ActiveRecord::Schema.define(version: 20140320200307) do + + create_table "active_admin_comments", force: true do |t| + t.string "namespace" + t.text "body" + t.string "resource_id", limit: 50, null: false + t.string "resource_type", limit: 50, null: false + t.integer "author_id" + t.string "author_type" + t.datetime "created_at" + t.datetime "updated_at" + end + + add_index "active_admin_comments", ["author_type", "author_id"], name: "index_active_admin_comments_on_author_type_and_author_id", using: :btree + add_index "active_admin_comments", ["namespace"], name: "index_active_admin_comments_on_namespace", using: :btree + add_index "active_admin_comments", ["resource_type", "resource_id"], name: "index_active_admin_comments_on_resource_type_and_resource_id", using: :btree + + create_table "admin_users", force: true do |t| + t.string "email", default: "", null: false + t.string "encrypted_password", default: "", null: false + t.string "reset_password_token" + t.datetime "reset_password_sent_at" + t.datetime "remember_created_at" + t.integer "sign_in_count", default: 0, null: false + t.datetime "current_sign_in_at" + t.datetime "last_sign_in_at" + t.string "current_sign_in_ip" + t.string "last_sign_in_ip" + t.datetime "created_at" + t.datetime "updated_at" + end + + add_index "admin_users", ["email"], name: "index_admin_users_on_email", unique: true, using: :btree + add_index "admin_users", ["reset_password_token"], name: "index_admin_users_on_reset_password_token", unique: true, using: :btree create_table "api_keys", force: true do |t| t.string "api_key", limit: 16 diff --git a/public/assets/active_admin-b50063add15e7f808a148a820d74bf3d.js b/public/assets/active_admin-b50063add15e7f808a148a820d74bf3d.js new file mode 100644 index 0000000..d73dd10 --- /dev/null +++ b/public/assets/active_admin-b50063add15e7f808a148a820d74bf3d.js @@ -0,0 +1,8 @@ +!function(t,e){function i(t){var e=t.length,i=ce.type(t);return ce.isWindow(t)?!1:1===t.nodeType&&e?!0:"array"===i||"function"!==i&&(0===e||"number"==typeof e&&e>0&&e-1 in t)}function n(t){var e=Ce[t]={};return ce.each(t.match(pe)||[],function(t,i){e[i]=!0}),e}function s(t,i,n,s){if(ce.acceptData(t)){var o,r,a=ce.expando,l=t.nodeType,h=l?ce.cache:t,c=l?t[a]:t[a]&&a;if(c&&h[c]&&(s||h[c].data)||n!==e||"string"!=typeof i)return c||(c=l?t[a]=ee.pop()||ce.guid++:a),h[c]||(h[c]=l?{}:{toJSON:ce.noop}),("object"==typeof i||"function"==typeof i)&&(s?h[c]=ce.extend(h[c],i):h[c].data=ce.extend(h[c].data,i)),r=h[c],s||(r.data||(r.data={}),r=r.data),n!==e&&(r[ce.camelCase(i)]=n),"string"==typeof i?(o=r[i],null==o&&(o=r[ce.camelCase(i)])):o=r,o}}function o(t,e,i){if(ce.acceptData(t)){var n,s,o=t.nodeType,r=o?ce.cache:t,l=o?t[ce.expando]:ce.expando;if(r[l]){if(e&&(n=i?r[l]:r[l].data)){ce.isArray(e)?e=e.concat(ce.map(e,ce.camelCase)):e in n?e=[e]:(e=ce.camelCase(e),e=e in n?[e]:e.split(" ")),s=e.length;for(;s--;)delete n[e[s]];if(i?!a(n):!ce.isEmptyObject(n))return}(i||(delete r[l].data,a(r[l])))&&(o?ce.cleanData([t],!0):ce.support.deleteExpando||r!=r.window?delete r[l]:r[l]=null)}}}function r(t,i,n){if(n===e&&1===t.nodeType){var s="data-"+i.replace(Se,"-$1").toLowerCase();if(n=t.getAttribute(s),"string"==typeof n){try{n="true"===n?!0:"false"===n?!1:"null"===n?null:+n+""===n?+n:Te.test(n)?ce.parseJSON(n):n}catch(o){}ce.data(t,i,n)}else n=e}return n}function a(t){var e;for(e in t)if(("data"!==e||!ce.isEmptyObject(t[e]))&&"toJSON"!==e)return!1;return!0}function l(){return!0}function h(){return!1}function c(){try{return Q.activeElement}catch(t){}}function u(t,e){do t=t[e];while(t&&1!==t.nodeType);return t}function p(t,e,i){if(ce.isFunction(e))return ce.grep(t,function(t,n){return!!e.call(t,n,t)!==i});if(e.nodeType)return ce.grep(t,function(t){return t===e!==i});if("string"==typeof e){if(Re.test(e))return ce.filter(e,t,i);e=ce.filter(e,t)}return ce.grep(t,function(t){return ce.inArray(t,e)>=0!==i})}function d(t){var e=Xe.split("|"),i=t.createDocumentFragment();if(i.createElement)for(;e.length;)i.createElement(e.pop());return i}function f(t,e){return ce.nodeName(t,"table")&&ce.nodeName(1===e.nodeType?e:e.firstChild,"tr")?t.getElementsByTagName("tbody")[0]||t.appendChild(t.ownerDocument.createElement("tbody")):t}function g(t){return t.type=(null!==ce.find.attr(t,"type"))+"/"+t.type,t}function m(t){var e=si.exec(t.type);return e?t.type=e[1]:t.removeAttribute("type"),t}function v(t,e){for(var i,n=0;null!=(i=t[n]);n++)ce._data(i,"globalEval",!e||ce._data(e[n],"globalEval"))}function y(t,e){if(1===e.nodeType&&ce.hasData(t)){var i,n,s,o=ce._data(t),r=ce._data(e,o),a=o.events;if(a){delete r.handle,r.events={};for(i in a)for(n=0,s=a[i].length;s>n;n++)ce.event.add(e,i,a[i][n])}r.data&&(r.data=ce.extend({},r.data))}}function b(t,e){var i,n,s;if(1===e.nodeType){if(i=e.nodeName.toLowerCase(),!ce.support.noCloneEvent&&e[ce.expando]){s=ce._data(e);for(n in s.events)ce.removeEvent(e,n,s.handle);e.removeAttribute(ce.expando)}"script"===i&&e.text!==t.text?(g(e).text=t.text,m(e)):"object"===i?(e.parentNode&&(e.outerHTML=t.outerHTML),ce.support.html5Clone&&t.innerHTML&&!ce.trim(e.innerHTML)&&(e.innerHTML=t.innerHTML)):"input"===i&&ei.test(t.type)?(e.defaultChecked=e.checked=t.checked,e.value!==t.value&&(e.value=t.value)):"option"===i?e.defaultSelected=e.selected=t.defaultSelected:("input"===i||"textarea"===i)&&(e.defaultValue=t.defaultValue)}}function _(t,i){var n,s,o=0,r=typeof t.getElementsByTagName!==U?t.getElementsByTagName(i||"*"):typeof t.querySelectorAll!==U?t.querySelectorAll(i||"*"):e;if(!r)for(r=[],n=t.childNodes||t;null!=(s=n[o]);o++)!i||ce.nodeName(s,i)?r.push(s):ce.merge(r,_(s,i));return i===e||i&&ce.nodeName(t,i)?ce.merge([t],r):r}function w(t){ei.test(t.type)&&(t.defaultChecked=t.checked)}function x(t,e){if(e in t)return e;for(var i=e.charAt(0).toUpperCase()+e.slice(1),n=e,s=Di.length;s--;)if(e=Di[s]+i,e in t)return e;return n}function k(t,e){return t=e||t,"none"===ce.css(t,"display")||!ce.contains(t.ownerDocument,t)}function D(t,e){for(var i,n,s,o=[],r=0,a=t.length;a>r;r++)n=t[r],n.style&&(o[r]=ce._data(n,"olddisplay"),i=n.style.display,e?(o[r]||"none"!==i||(n.style.display=""),""===n.style.display&&k(n)&&(o[r]=ce._data(n,"olddisplay",N(n.nodeName)))):o[r]||(s=k(n),(i&&"none"!==i||!s)&&ce._data(n,"olddisplay",s?i:ce.css(n,"display"))));for(r=0;a>r;r++)n=t[r],n.style&&(e&&"none"!==n.style.display&&""!==n.style.display||(n.style.display=e?o[r]||"":"none"));return t}function C(t,e,i){var n=vi.exec(e);return n?Math.max(0,n[1]-(i||0))+(n[2]||"px"):e}function T(t,e,i,n,s){for(var o=i===(n?"border":"content")?4:"width"===e?1:0,r=0;4>o;o+=2)"margin"===i&&(r+=ce.css(t,i+ki[o],!0,s)),n?("content"===i&&(r-=ce.css(t,"padding"+ki[o],!0,s)),"margin"!==i&&(r-=ce.css(t,"border"+ki[o]+"Width",!0,s))):(r+=ce.css(t,"padding"+ki[o],!0,s),"padding"!==i&&(r+=ce.css(t,"border"+ki[o]+"Width",!0,s)));return r}function S(t,e,i){var n=!0,s="width"===e?t.offsetWidth:t.offsetHeight,o=ci(t),r=ce.support.boxSizing&&"border-box"===ce.css(t,"boxSizing",!1,o);if(0>=s||null==s){if(s=ui(t,e,o),(0>s||null==s)&&(s=t.style[e]),yi.test(s))return s;n=r&&(ce.support.boxSizingReliable||s===t.style[e]),s=parseFloat(s)||0}return s+T(t,e,i||(r?"border":"content"),n,o)+"px"}function N(t){var e=Q,i=_i[t];return i||(i=P(t,e),"none"!==i&&i||(hi=(hi||ce("'),$("#iframe"+t).attr("src",src),$("#iframe"+t).attr("width",i),$("#iframe"+t).attr("height",n)}function updateSelectValues(){selectedValue=$(this).val(),$(".mutuallyexclusive"+index).each(function(){$(this).val("")}),$(this).val(selectedValue)}function setupChartForm(t){return function(e,i){i.length>0&&$("#"+i.split("=")[0]+"_"+t).val(decodeURIComponent(i.split("=")[1]))}}function setupColumns(t,e){$(sortColumnSetup(t,e)),$(".column").disableSelection()}function createWindowsWithData(t,e,i,n){for(var r in t){for(var s in t[r])var o=s;if(t[r].chart_window&&(a=t[r].chart_window),t[r].plugin_window&&(a=t[r].plugin_window),t[r].portlet_window&&(a=t[r].portlet_window),"undefined"==a)var a=t[r].portlet_window?t[r].portlet_window:t[r].chart_window;colId=a.col,title=a.title;var l=a.html;if(t[r].chart_window){var h=a.id;$("body").append("
    ")}var c=addWindow(n,colId,a.id,o,title,l);c.each(decoratePortlet(e)),c.find(".ui-toggle").click(uiToggleClick),c.find(".ui-view").click(uiViewClick(i)),c.find(".ui-edit").click(uiEditClick(i)),c.find(".ui-close").click(uiCloseClick(i))}}function addWindow(t,e,i,n,r,s){if($("#"+t+"_dialog"+e).append('
    '+r+'
    '+s+"
    "),$("#portlet_"+i).length>1)throw"Portlet count doesn't match what's expected";return $("#portlet_"+i)}function sortColumnSetup(t,e){$(".column").sortable({opacity:.6,helper:function(){return $("
    Drop to re-position
    ")},connectWith:".column",update:updatePortletPositions(t,e)})}function getPortletArray(t){var e=new Array,n=t.split("&");for(i in n)val=n[i].split("=")[1],e.push(val);return e}function uiToggleClick(){$(this).toggleClass("ui-icon-minusthick").toggleClass("ui-icon-plusthick"),$(this).parents(".portlet:first").find(".portlet-content").toggle()}!function(t,e){t.rails!==e&&t.error("jquery-ujs has already been loaded!");var i,n=t(document);t.rails=i={linkClickSelector:"a[data-confirm], a[data-method], a[data-remote], a[data-disable-with]",buttonClickSelector:"button[data-remote]",inputChangeSelector:"select[data-remote], input[data-remote], textarea[data-remote]",formSubmitSelector:"form",formInputClickSelector:"form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])",disableSelector:"input[data-disable-with], button[data-disable-with], textarea[data-disable-with]",enableSelector:"input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled",requiredInputSelector:"input[name][required]:not([disabled]),textarea[name][required]:not([disabled])",fileInputSelector:"input[type=file]",linkDisableSelector:"a[data-disable-with]",CSRFProtection:function(e){var i=t('meta[name="csrf-token"]').attr("content");i&&e.setRequestHeader("X-CSRF-Token",i)},fire:function(e,i,n){var r=t.Event(i);return e.trigger(r,n),r.result!==!1},confirm:function(t){return confirm(t)},ajax:function(e){return t.ajax(e)},href:function(t){return t.attr("href")},handleRemote:function(n){var r,s,o,a,l,h,c,d;if(i.fire(n,"ajax:before")){if(a=n.data("cross-domain"),l=a===e?null:a,h=n.data("with-credentials")||null,c=n.data("type")||t.ajaxSettings&&t.ajaxSettings.dataType,n.is("form")){r=n.attr("method"),s=n.attr("action"),o=n.serializeArray();var u=n.data("ujs:submit-button");u&&(o.push(u),n.data("ujs:submit-button",null))}else n.is(i.inputChangeSelector)?(r=n.data("method"),s=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):n.is(i.buttonClickSelector)?(r=n.data("method")||"get",s=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):(r=n.data("method"),s=i.href(n),o=n.data("params")||null);d={type:r||"GET",data:o,dataType:c,beforeSend:function(t,r){return r.dataType===e&&t.setRequestHeader("accept","*/*;q=0.5, "+r.accepts.script),i.fire(n,"ajax:beforeSend",[t,r])},success:function(t,e,i){n.trigger("ajax:success",[t,e,i])},complete:function(t,e){n.trigger("ajax:complete",[t,e])},error:function(t,e,i){n.trigger("ajax:error",[t,e,i])},crossDomain:l},h&&(d.xhrFields={withCredentials:h}),s&&(d.url=s);var p=i.ajax(d);return n.trigger("ajax:send",p),p}return!1},handleMethod:function(n){var r=i.href(n),s=n.data("method"),o=n.attr("target"),a=t("meta[name=csrf-token]").attr("content"),l=t("meta[name=csrf-param]").attr("content"),h=t(''),c='';l!==e&&a!==e&&(c+=''),o&&h.attr("target",o),h.hide().append(c).appendTo("body"),h.submit()},disableFormElements:function(e){e.find(i.disableSelector).each(function(){var e=t(this),i=e.is("button")?"html":"val";e.data("ujs:enable-with",e[i]()),e[i](e.data("disable-with")),e.prop("disabled",!0)})},enableFormElements:function(e){e.find(i.enableSelector).each(function(){var e=t(this),i=e.is("button")?"html":"val";e.data("ujs:enable-with")&&e[i](e.data("ujs:enable-with")),e.prop("disabled",!1)})},allowAction:function(t){var e,n=t.data("confirm"),r=!1;return n?(i.fire(t,"confirm")&&(r=i.confirm(n),e=i.fire(t,"confirm:complete",[r])),r&&e):!0},blankInputs:function(e,i,n){var r,s,o=t(),a=i||"input,textarea",l=e.find(a);return l.each(function(){if(r=t(this),s=r.is("input[type=checkbox],input[type=radio]")?r.is(":checked"):r.val(),!s==!n){if(r.is("input[type=radio]")&&l.filter('input[type=radio]:checked[name="'+r.attr("name")+'"]').length)return!0;o=o.add(r)}}),o.length?o:!1},nonBlankInputs:function(t,e){return i.blankInputs(t,e,!0)},stopEverything:function(e){return t(e.target).trigger("ujs:everythingStopped"),e.stopImmediatePropagation(),!1},disableElement:function(t){t.data("ujs:enable-with",t.html()),t.html(t.data("disable-with")),t.bind("click.railsDisable",function(t){return i.stopEverything(t)})},enableElement:function(t){t.data("ujs:enable-with")!==e&&(t.html(t.data("ujs:enable-with")),t.removeData("ujs:enable-with")),t.unbind("click.railsDisable")}},i.fire(n,"rails:attachBindings")&&(t.ajaxPrefilter(function(t,e,n){t.crossDomain||i.CSRFProtection(n)}),n.delegate(i.linkDisableSelector,"ajax:complete",function(){i.enableElement(t(this))}),n.delegate(i.linkClickSelector,"click.rails",function(n){var r=t(this),s=r.data("method"),o=r.data("params");if(!i.allowAction(r))return i.stopEverything(n);if(r.is(i.linkDisableSelector)&&i.disableElement(r),r.data("remote")!==e){if(!(!n.metaKey&&!n.ctrlKey||s&&"GET"!==s||o))return!0;var a=i.handleRemote(r);return a===!1?i.enableElement(r):a.error(function(){i.enableElement(r)}),!1}return r.data("method")?(i.handleMethod(r),!1):void 0}),n.delegate(i.buttonClickSelector,"click.rails",function(e){var n=t(this);return i.allowAction(n)?(i.handleRemote(n),!1):i.stopEverything(e)}),n.delegate(i.inputChangeSelector,"change.rails",function(e){var n=t(this);return i.allowAction(n)?(i.handleRemote(n),!1):i.stopEverything(e)}),n.delegate(i.formSubmitSelector,"submit.rails",function(n){var r=t(this),s=r.data("remote")!==e,o=i.blankInputs(r,i.requiredInputSelector),a=i.nonBlankInputs(r,i.fileInputSelector);if(!i.allowAction(r))return i.stopEverything(n);if(o&&r.attr("novalidate")==e&&i.fire(r,"ajax:aborted:required",[o]))return i.stopEverything(n);if(s){if(a){setTimeout(function(){i.disableFormElements(r)},13);var l=i.fire(r,"ajax:aborted:file",[a]);return l||setTimeout(function(){i.enableFormElements(r)},13),l}return i.handleRemote(r),!1}setTimeout(function(){i.disableFormElements(r)},13)}),n.delegate(i.formInputClickSelector,"click.rails",function(e){var n=t(this);if(!i.allowAction(n))return i.stopEverything(e);var r=n.attr("name"),s=r?{name:r,value:n.val()}:null;n.closest("form").data("ujs:submit-button",s)}),n.delegate(i.formSubmitSelector,"ajax:beforeSend.rails",function(e){this==e.target&&i.disableFormElements(t(this))}),n.delegate(i.formSubmitSelector,"ajax:complete.rails",function(e){this==e.target&&i.enableFormElements(t(this))}),t(function(){var e=t("meta[name=csrf-token]").attr("content"),i=t("meta[name=csrf-param]").attr("content");t('form input[name="'+i+'"]').val(e)}))}(jQuery),function(t){t.cookie=function(e,i,n){if(arguments.length>1&&(!/Object/.test(Object.prototype.toString.call(i))||null===i||void 0===i)){if(n=t.extend({},n),(null===i||void 0===i)&&(n.expires=-1),"number"==typeof n.expires){var r=n.expires,s=n.expires=new Date;s.setDate(s.getDate()+r)}return i=String(i),document.cookie=[encodeURIComponent(e),"=",n.raw?i:encodeURIComponent(i),n.expires?"; expires="+n.expires.toUTCString():"",n.path?"; path="+n.path:"",n.domain?"; domain="+n.domain:"",n.secure?"; secure":""].join("")}n=i||{};for(var o,a=n.raw?function(t){return t}:decodeURIComponent,l=document.cookie.split("; "),h=0;o=l[h]&&l[h].split("=");h++)if(a(o[0])===e)return a(o[1]||"");return null}}(jQuery),function(){function t(t,e){var i;t||(t={});for(i in e)t[i]=e[i];return t}function e(){var t,e,i=arguments,n={},r=function(t,e){var i,n;"object"!=typeof t&&(t={});for(n in e)e.hasOwnProperty(n)&&(i=e[n],t[n]=i&&"object"==typeof i&&"[object Array]"!==Object.prototype.toString.call(i)&&"number"!=typeof i.nodeType?r(t[n]||{},i):e[n]);return t};for(i[0]===!0&&(n=i[1],i=Array.prototype.slice.call(i,2)),e=i.length,t=0;e>t;t++)n=r(n,i[t]);return n}function i(t,e){return parseInt(t,e||10)}function n(t){return"string"==typeof t}function r(t){return"object"==typeof t}function s(t){return"[object Array]"===Object.prototype.toString.call(t)}function o(t){return"number"==typeof t}function a(t){return le.log(t)/le.LN10}function l(t){return le.pow(10,t)}function h(t,e){for(var i=t.length;i--;)if(t[i]===e){t.splice(i,1);break}}function c(t){return t!==_&&null!==t}function d(t,e,i){var s,o;if(n(e))c(i)?t.setAttribute(e,i):t&&t.getAttribute&&(o=t.getAttribute(e));else if(c(e)&&r(e))for(s in e)t.setAttribute(s,e[s]);return o}function u(t){return s(t)?t:[t]}function p(){var t,e,i=arguments,n=i.length;for(t=0;n>t;t++)if(e=i[t],"undefined"!=typeof e&&null!==e)return e}function f(e,i){we&&i&&i.opacity!==_&&(i.filter="alpha(opacity="+100*i.opacity+")"),t(e.style,i)}function g(e,i,n,r,s){return e=oe.createElement(e),i&&t(e,i),s&&f(e,{padding:0,border:Be,margin:0}),n&&f(e,n),r&&r.appendChild(e),e}function m(e,i){var n=function(){};return n.prototype=new e,t(n.prototype,i),n}function y(t,e,n,r){var s=X.lang,t=+t||0,o=-1===e?(t.toString().split(".")[1]||"").length:isNaN(e=fe(e))?2:e,e=void 0===n?s.decimalPoint:n,r=void 0===r?s.thousandsSep:r,s=0>t?"-":"",n=String(i(t=fe(t).toFixed(o))),a=n.length>3?n.length%3:0;return s+(a?n.substr(0,a)+r:"")+n.substr(a).replace(/(\d{3})(?=\d)/g,"$1"+r)+(o?e+fe(t-n).toFixed(o).slice(2):"")}function v(t,e){return Array((e||2)+1-String(t).length).join(0)+t}function x(t,e,i){var n=t[e];t[e]=function(){var t=Array.prototype.slice.call(arguments);return t.unshift(n),i.apply(this,t)}}function b(t,e){for(var i,n,r,s,o,a="{",l=!1,h=[];-1!==(a=t.indexOf(a));){if(i=t.slice(0,a),l){for(n=i.split(":"),r=n.shift().split("."),o=r.length,i=e,s=0;o>s;s++)i=i[r[s]];n.length&&(n=n.join(":"),r=/\.([0-9])/,s=X.lang,o=void 0,/f$/.test(n)?(o=(o=n.match(r))?o[1]:-1,i=y(i,o,s.decimalPoint,n.indexOf(",")>-1?s.thousandsSep:"")):i=G(n,i))}h.push(i),t=t.slice(a+1),a=(l=!l)?"}":"{"}return h.push(t),h.join("")}function w(t){return le.pow(10,ce(le.log(t)/le.LN10))}function k(t,e,i,n){var r,i=p(i,1);for(r=t/i,e||(e=[1,2,2.5,5,10],n&&n.allowDecimals===!1&&(1===i?e=[1,2,5,10]:.1>=i&&(e=[1/i]))),n=0;nn;n++)t[n].ss_i=n;for(t.sort(function(t,n){return i=e(t,n),0===i?t.ss_i-n.ss_i:i}),n=0;r>n;n++)delete t[n].ss_i}function C(t){for(var e=t.length,i=t[0];e--;)t[e]i&&(i=t[e]);return i}function A(t,e){for(var i in t)t[i]&&t[i]!==e&&t[i].destroy&&t[i].destroy(),delete t[i]}function L(t){W||(W=g(ze)),t&&W.appendChild(t),W.innerHTML=""}function M(t,e){var i="Highcharts error #"+t+": www.highcharts.com/errors/"+t;if(e)throw i;ae.console&&console.log(i)}function I(t){return parseFloat(t.toPrecision(14))}function D(t,e){$=p(t,e.animation)}function E(){var t=X.global.useUTC,e=t?"getUTC":"get",i=t?"setUTC":"set";q=6e4*(t&&X.global.timezoneOffset||0),V=t?Date.UTC:function(t,e,i,n,r,s){return new Date(t,e,p(i,1),p(n,0),p(r,0),p(s,0)).getTime()},U=e+"Minutes",Z=e+"Hours",K=e+"Day",Q=e+"Date",J=e+"Month",te=e+"FullYear",ee=i+"Minutes",ie=i+"Hours",ne=i+"Date",re=i+"Month",se=i+"FullYear"}function O(){}function R(t,e,i,n){this.axis=t,this.pos=e,this.type=i||"",this.isNew=!0,!i&&!n&&this.addLabel()}function z(){this.init.apply(this,arguments)}function B(t,e,i,n,r,s){var o=t.chart.inverted;this.axis=t,this.isNegative=i,this.options=e,this.x=n,this.total=null,this.points={},this.stack=r,this.percent="percent"===s,this.alignOptions={align:e.align||(o?i?"left":"right":"center"),verticalAlign:e.verticalAlign||(o?"middle":i?"bottom":"top"),y:p(e.y,o?4:i?14:-6),x:p(e.x,o?i?-6:6:0)},this.textAlign=e.textAlign||(o?i?"right":"left":"center")}function F(){this.init.apply(this,arguments)}function N(){this.init.apply(this,arguments)}var _,H,W,X,G,$,Y,j,V,q,U,Z,K,Q,J,te,ee,ie,ne,re,se,oe=document,ae=window,le=Math,he=le.round,ce=le.floor,de=le.ceil,ue=le.max,pe=le.min,fe=le.abs,ge=le.cos,me=le.sin,ye=le.PI,ve=2*ye/360,xe=navigator.userAgent,be=ae.opera,we=/msie/i.test(xe)&&!be,ke=8===oe.documentMode,Se=/AppleWebKit/.test(xe),Te=/Firefox/.test(xe),Ce=/(Mobile|Android|Windows Phone)/.test(xe),Pe="http://www.w3.org/2000/svg",Ae=!!oe.createElementNS&&!!oe.createElementNS(Pe,"svg").createSVGRect,Le=Te&&parseInt(xe.split("Firefox/")[1],10)<4,Me=!Ae&&!we&&!!oe.createElement("canvas").getContext,Ie=oe.documentElement.ontouchstart!==_,De={},Ee=0,Oe=function(){},Re=[],ze="div",Be="none",Fe=/^[0-9]+$/,Ne="rgba(192,192,192,"+(Ae?1e-4:.002)+")",_e="stroke-width",He={};ae.Highcharts=ae.Highcharts?M(16,!0):{},G=function(e,i,n){if(!c(i)||isNaN(i))return"Invalid date";var r,e=p(e,"%Y-%m-%d %H:%M:%S"),s=new Date(i-q),o=s[Z](),a=s[K](),l=s[Q](),h=s[J](),d=s[te](),u=X.lang,f=u.weekdays,s=t({a:f[a].substr(0,3),A:f[a],d:v(l),e:l,b:u.shortMonths[h],B:u.months[h],m:v(h+1),y:d.toString().substr(2,2),Y:d,H:v(o),I:v(o%12||12),l:o%12||12,M:v(s[U]()),p:12>o?"AM":"PM",P:12>o?"am":"pm",S:v(s.getSeconds()),L:v(he(i%1e3),3)},Highcharts.dateFormats);for(r in s)for(;-1!==e.indexOf("%"+r);)e=e.replace("%"+r,"function"==typeof s[r]?s[r](i):s[r]);return n?e.substr(0,1).toUpperCase()+e.substr(1):e},S.prototype={wrapColor:function(t){this.color>=t&&(this.color=0)},wrapSymbol:function(t){this.symbol>=t&&(this.symbol=0)}},j=function(){for(var t=0,e=arguments,i=e.length,n={};i>t;t++)n[e[t++]]=e[t];return n}("millisecond",1,"second",1e3,"minute",6e4,"hour",36e5,"day",864e5,"week",6048e5,"month",26784e5,"year",31556952e3),Y={init:function(t,e,i){var n,r,s,e=e||"",o=t.shift,a=e.indexOf("C")>-1,l=a?7:3,e=e.split(" "),i=[].concat(i),h=function(t){for(n=t.length;n--;)"M"===t[n]&&t.splice(n+1,0,t[n+1],t[n+2],t[n+1],t[n+2])};if(a&&(h(e),h(i)),t.isArea&&(r=e.splice(e.length-6,6),s=i.splice(i.length-6,6)),o<=i.length/l&&e.length===i.length)for(;o--;)i=[].concat(i).splice(0,l).concat(i);if(t.shift=0,e.length)for(t=i.length;e.lengthi)for(;s--;)n=parseFloat(t[s]),r[s]=isNaN(n)?t[s]:i*parseFloat(e[s]-n)+n;else r=e;return r}},function(e){ae.HighchartsAdapter=ae.HighchartsAdapter||e&&{init:function(t){var i,r=e.fx,s=r.step,o=e.Tween,a=o&&o.propHooks;i=e.cssHooks.opacity,e.extend(e.easing,{easeOutQuad:function(t,e,i,n,r){return-n*(e/=r)*(e-2)+i}}),e.each(["cur","_default","width","height","opacity"],function(t,e){var i,n=s;"cur"===e?n=r.prototype:"_default"===e&&o&&(n=a[e],e="set"),(i=n[e])&&(n[e]=function(n){var r,n=t?n:this;return"align"!==n.prop?(r=n.elem,r.attr?r.attr(n.prop,"cur"===e?_:n.now):i.apply(this,arguments)):void 0})}),x(i,"get",function(t,e,i){return e.attr?e.opacity||0:t.call(this,e,i)}),i=function(e){var i,n=e.elem;e.started||(i=t.init(n,n.d,n.toD),e.start=i[0],e.end=i[1],e.started=!0),n.attr("d",t.step(e.start,e.end,e.pos,n.toD))},o?a.d={set:i}:s.d=i,this.each=Array.prototype.forEach?function(t,e){return Array.prototype.forEach.call(t,e)}:function(t,e){for(var i=0,n=t.length;n>i;i++)if(e.call(t[i],t[i],i,t)===!1)return i},e.fn.highcharts=function(){var t,e,i="Chart",r=arguments;return n(r[0])&&(i=r[0],r=Array.prototype.slice.call(r,1)),t=r[0],t!==_&&(t.chart=t.chart||{},t.chart.renderTo=this[0],new Highcharts[i](t,r[1]),e=this),t===_&&(e=Re[d(this[0],"data-highcharts-chart")]),e}},getScript:e.getScript,inArray:e.inArray,adapterRun:function(t,i){return e(t)[i]()},grep:e.grep,map:function(t,e){for(var i=[],n=0,r=t.length;r>n;n++)i[n]=e.call(t[n],t[n],n,t);return i},offset:function(t){return e(t).offset()},addEvent:function(t,i,n){e(t).bind(i,n)},removeEvent:function(t,i,n){var r=oe.removeEventListener?"removeEventListener":"detachEvent";oe[r]&&t&&!t[r]&&(t[r]=function(){}),e(t).unbind(i,n)},fireEvent:function(i,n,r,s){var o,a=e.Event(n),l="detached"+n;!we&&r&&(delete r.layerX,delete r.layerY),t(a,r),i[n]&&(i[l]=i[n],i[n]=null),e.each(["preventDefault","stopPropagation"],function(t,e){var i=a[e];a[e]=function(){try{i.call(a)}catch(t){"preventDefault"===e&&(o=!0)}}}),e(i).trigger(a),i[l]&&(i[n]=i[l],i[l]=null),s&&!a.isDefaultPrevented()&&!o&&s(a)},washMouseEvent:function(t){var e=t.originalEvent||t;return e.pageX===_&&(e.pageX=t.pageX,e.pageY=t.pageY),e},animate:function(t,i,n){var r=e(t);t.style||(t.style={}),i.d&&(t.toD=i.d,i.d=1),r.stop(),i.opacity!==_&&t.attr&&(i.opacity+="px"),r.animate(i,n)},stop:function(t){e(t).stop()}}}(ae.jQuery);var We=ae.HighchartsAdapter,Xe=We||{};We&&We.init.call(We,Y);var Ge=Xe.adapterRun,$e=Xe.getScript,Ye=Xe.inArray,je=Xe.each,Ve=Xe.grep,qe=Xe.offset,Ue=Xe.map,Ze=Xe.addEvent,Ke=Xe.removeEvent,Qe=Xe.fireEvent,Je=Xe.washMouseEvent,ti=Xe.animate,ei=Xe.stop,Xe={enabled:!0,x:0,y:15,style:{color:"#666",cursor:"default",fontSize:"11px",lineHeight:"14px"}};X={colors:"#2f7ed8,#0d233a,#8bbc21,#910000,#1aadce,#492970,#f28f43,#77a1e5,#c42525,#a6c96a".split(","),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),decimalPoint:".",numericSymbols:"k,M,G,T,P,E".split(","),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:","},global:{useUTC:!0,canvasToolsURL:"http://code.highcharts.com/3.0.8/modules/canvas-tools.js",VMLRadialGradientURL:"http://code.highcharts.com/3.0.8/gfx/vml-radial-gradient.png"},chart:{borderColor:"#4572A7",borderRadius:5,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],style:{fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif',fontSize:"12px"},backgroundColor:"#FFFFFF",plotBorderColor:"#C0C0C0",resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}}},title:{text:"Chart title",align:"center",margin:15,style:{color:"#274b6d",fontSize:"16px"}},subtitle:{text:"",align:"center",style:{color:"#4d759e"}},plotOptions:{line:{allowPointSelect:!1,showCheckbox:!1,animation:{duration:1e3},events:{},lineWidth:2,marker:{enabled:!0,lineWidth:0,radius:4,lineColor:"#FFFFFF",states:{hover:{enabled:!0},select:{fillColor:"#FFFFFF",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:e(Xe,{align:"center",enabled:!1,formatter:function(){return null===this.y?"":y(this.y,-1)},verticalAlign:"bottom",y:0}),cropThreshold:300,pointRange:0,states:{hover:{marker:{}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1e3}},labels:{style:{position:"absolute",color:"#3E576F"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderWidth:1,borderColor:"#909090",borderRadius:5,navigation:{activeColor:"#274b6d",inactiveColor:"#CCC"},shadow:!1,itemStyle:{cursor:"pointer",color:"#274b6d",fontSize:"12px"},itemHoverStyle:{color:"#000"},itemHiddenStyle:{color:"#CCC"},itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"1em"},style:{position:"absolute",backgroundColor:"white",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:Ae,backgroundColor:"rgba(255, 255, 255, .85)",borderWidth:1,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},headerFormat:'{point.key}
    ',pointFormat:'{series.name}: {point.y}
    ',shadow:!0,snap:Ce?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"ThingSpeak.com",href:"https://thingspeak.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#D62020",fontSize:"9px"}}};var ii=X.plotOptions,We=ii.line;E();var ni=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,ri=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,si=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,oi=function(t){var n,r,s=[];return function(t){t&&t.stops?r=Ue(t.stops,function(t){return oi(t[1])}):(n=ni.exec(t))?s=[i(n[1]),i(n[2]),i(n[3]),parseFloat(n[4],10)]:(n=ri.exec(t))?s=[i(n[1],16),i(n[2],16),i(n[3],16),1]:(n=si.exec(t))&&(s=[i(n[1]),i(n[2]),i(n[3]),1])}(t),{get:function(i){var n;return r?(n=e(t),n.stops=[].concat(n.stops),je(r,function(t,e){n.stops[e]=[n.stops[e][0],t.get(i)]})):n=s&&!isNaN(s[0])?"rgb"===i?"rgb("+s[0]+","+s[1]+","+s[2]+")":"a"===i?s[3]:"rgba("+s.join(",")+")":t,n},brighten:function(t){if(r)je(r,function(e){e.brighten(t)});else if(o(t)&&0!==t){var e;for(e=0;3>e;e++)s[e]+=i(255*t),s[e]<0&&(s[e]=0),s[e]>255&&(s[e]=255)}return this},rgba:s,setOpacity:function(t){return s[3]=t,this}}};O.prototype={init:function(t,e){this.element="span"===e?g(e):oe.createElementNS(Pe,e),this.renderer=t,this.attrSetters={}},opacity:1,animate:function(t,i,n){i=p(i,$,!0),ei(this),i?(i=e(i),n&&(i.complete=n),ti(this,t,i)):(this.attr(t),n&&n())},attr:function(t,e){var r,s,o,a,l,h,u,f=this.element,g=f.nodeName.toLowerCase(),m=this.renderer,y=this.attrSetters,v=this.shadows,x=this;if(n(t)&&c(e)&&(r=t,t={},t[r]=e),n(t))r=t,"circle"===g?r={x:"cx",y:"cy"}[r]||r:"strokeWidth"===r&&(r="stroke-width"),x=d(f,r)||this[r]||0,"d"!==r&&"visibility"!==r&&"fill"!==r&&(x=parseFloat(x));else{for(r in t)if(l=!1,s=t[r],o=y[r]&&y[r].call(this,s,r),o!==!1){if(o!==_&&(s=o),"d"===r)s&&s.join&&(s=s.join(" ")),/(NaN| {2}|^$)/.test(s)&&(s="M 0 0");else if("x"===r&&"text"===g)for(o=0;os&&(s=0),this[r]=s,"text"===r?(s!==this.textStr&&delete this.bBox,this.textStr=s,this.added&&m.buildText(this)):l||d(f,r,s)}u&&this.updateTransform()}return x},addClass:function(t){var e=this.element,i=d(e,"class")||"";return-1===i.indexOf(t)&&d(e,"class",i+" "+t),this},symbolAttr:function(t){var e=this;je("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","),function(i){e[i]=p(t[i],e[i])}),e.attr({d:e.renderer.symbols[e.symbolName](e.x,e.y,e.width,e.height,e)})},clip:function(t){return this.attr("clip-path",t?"url("+this.renderer.url+"#"+t.id+")":Be)},crisp:function(t,e,i,n,r){var s,o,a={},l={},t=t||this.strokeWidth||this.attr&&this.attr("stroke-width")||0;o=he(t)%2/2,l.x=ce(e||this.x||0)+o,l.y=ce(i||this.y||0)+o,l.width=ce((n||this.width||0)-2*o),l.height=ce((r||this.height||0)-2*o),l.strokeWidth=t;for(s in l)this[s]!==l[s]&&(this[s]=a[s]=l[s]);return a},css:function(e){var n,r=this.element,s=this.textWidth=e&&e.width&&"text"===r.nodeName.toLowerCase()&&i(e.width),o="",a=function(t,e){return"-"+e.toLowerCase()};if(e&&e.color&&(e.fill=e.color),this.styles=e=t(this.styles,e),s&&delete e.width,we&&!Ae)f(this.element,e);else{for(n in e)o+=n.replace(/([A-Z])/g,a)+":"+e[n]+";";d(r,"style",o)}return s&&this.added&&this.renderer.buildText(this),this},on:function(t,e){var i=this,n=i.element;return Ie&&"click"===t?(n.ontouchstart=function(t){i.touchEventFired=Date.now(),t.preventDefault(),e.call(n,t)},n.onclick=function(t){(-1===xe.indexOf("Android")||Date.now()-(i.touchEventFired||0)>1100)&&e.call(n,t)}):n["on"+t]=e,this},setRadialReference:function(t){return this.element.radialReference=t,this},translate:function(t,e){return this.attr({translateX:t,translateY:e})},invert:function(){return this.inverted=!0,this.updateTransform(),this},updateTransform:function(){var t=this.translateX||0,e=this.translateY||0,i=this.scaleX,n=this.scaleY,r=this.inverted,s=this.rotation;r&&(t+=this.attr("width"),e+=this.attr("height")),t=["translate("+t+","+e+")"],r?t.push("rotate(90) scale(-1,1)"):s&&t.push("rotate("+s+" "+(this.x||0)+" "+(this.y||0)+")"),(c(i)||c(n))&&t.push("scale("+p(i,1)+" "+p(n,1)+")"),t.length&&d(this.element,"transform",t.join(" "))},toFront:function(){var t=this.element;return t.parentNode.appendChild(t),this},align:function(t,e,i){var r,s,o,a,l={};return s=this.renderer,o=s.alignedObjects,t?(this.alignOptions=t,this.alignByTranslate=e,(!i||n(i))&&(this.alignTo=r=i||"renderer",h(o,this),o.push(this),i=null)):(t=this.alignOptions,e=this.alignByTranslate,r=this.alignTo),i=p(i,s[r],s),r=t.align,s=t.verticalAlign,o=(i.x||0)+(t.x||0),a=(i.y||0)+(t.y||0),("right"===r||"center"===r)&&(o+=(i.width-(t.width||0))/{right:1,center:2}[r]),l[e?"translateX":"x"]=he(o),("bottom"===s||"middle"===s)&&(a+=(i.height-(t.height||0))/({bottom:1,middle:2}[s]||1)),l[e?"translateY":"y"]=he(a),this[this.placed?"animate":"attr"](l),this.placed=!0,this.alignAttr=l,this},getBBox:function(){var e,i,n=this.bBox,r=this.renderer,s=this.rotation;e=this.element;var o=this.styles,a=s*ve;i=this.textStr;var l;if((""===i||Fe.test(i))&&(l=i.length+"|"+o.fontSize+"|"+o.fontFamily,n=r.cache[l]),!n){if(e.namespaceURI===Pe||r.forExport){try{n=e.getBBox?t({},e.getBBox()):{width:e.offsetWidth,height:e.offsetHeight}}catch(h){}(!n||n.width<0)&&(n={width:0,height:0})}else n=this.htmlGetBBox();r.isSVG&&(e=n.width,i=n.height,we&&o&&"11px"===o.fontSize&&"22.7"===i.toPrecision(3)&&(n.height=i=14),s&&(n.width=fe(i*me(a))+fe(e*ge(a)),n.height=fe(i*ge(a))+fe(e*me(a)))),this.bBox=n,l&&(r.cache[l]=n)}return n},show:function(){return this.attr({visibility:"visible"})},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(t){var e=this;e.animate({opacity:0},{duration:t||150,complete:function(){e.hide()}})},add:function(t){var e,n=this.renderer,r=t||n,s=r.element||n.box,o=s.childNodes,a=this.element,l=d(a,"zIndex");if(t&&(this.parentGroup=t),this.parentInverted=t&&t.inverted,void 0!==this.textStr&&n.buildText(this),l&&(r.handleZ=!0,l=i(l)),r.handleZ)for(r=0;rl||!c(l)&&c(n))){s.insertBefore(a,t),e=!0;break}return e||s.appendChild(a),this.added=!0,Qe(this,"add"),this},safeRemoveChild:function(t){var e=t.parentNode;e&&e.removeChild(t)},destroy:function(){var t,e,i=this,n=i.element||{},r=i.shadows,s=i.renderer.isSVG&&"SPAN"===n.nodeName&&i.parentGroup;if(n.onclick=n.onmouseout=n.onmouseover=n.onmousemove=n.point=null,ei(i),i.clipPath&&(i.clipPath=i.clipPath.destroy()),i.stops){for(e=0;e=n;n++)r=c.cloneNode(0),s=2*o+1-2*n,d(r,{isShadow:"true",stroke:t.color||"black","stroke-opacity":a*n,"stroke-width":s,transform:"translate"+l,fill:Be}),i&&(d(r,"height",ue(d(r,"height")-s,0)),r.cutHeight=s),e?e.element.appendChild(r):c.parentNode.insertBefore(r,c),h.push(r);this.shadows=h}return this}};var ai=function(){this.init.apply(this,arguments)};ai.prototype={Element:O,init:function(t,e,i,n){var r,s,o=location;r=this.createElement("svg").attr({version:"1.1"}),s=r.element,t.appendChild(s),-1===t.innerHTML.indexOf("xmlns")&&d(s,"xmlns",Pe),this.isSVG=!0,this.box=s,this.boxWrapper=r,this.alignedObjects=[],this.url=(Te||Se)&&oe.getElementsByTagName("base").length?o.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"",this.createElement("desc").add().element.appendChild(oe.createTextNode("Created with Highcharts 3.0.8")),this.defs=this.createElement("defs").add(),this.forExport=n,this.gradients={},this.cache={},this.setSize(e,i,!1);var a;Te&&t.getBoundingClientRect&&(this.subPixelFix=e=function(){f(t,{left:0,top:0}),a=t.getBoundingClientRect(),f(t,{left:de(a.left)-a.left+"px",top:de(a.top)-a.top+"px"})},e(),Ze(ae,"resize",e))},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var t=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),A(this.gradients||{}),this.gradients=null,t&&(this.defs=t.destroy()),this.subPixelFix&&Ke(ae,"resize",this.subPixelFix),this.alignedObjects=null},createElement:function(t){var e=new this.Element;return e.init(this,t),e},draw:function(){},buildText:function(t){for(var e=t.element,n=this,r=n.forExport,s=p(t.textStr,"").toString().replace(/<(b|strong)>/g,'').replace(/<(i|em)>/g,'').replace(//g,"").split(//g),o=e.childNodes,a=/style="([^"]+)"/,l=/href="(http[^"]+)"/,h=d(e,"x"),c=t.styles,u=t.textWidth,g=c&&c.lineHeight,m=o.length;m--;)e.removeChild(o[m]); +u&&!t.added&&this.box.appendChild(e),""===s[s.length-1]&&s.pop(),je(s,function(s,o){var p,m=0,s=s.replace(//g,"|||");p=s.split("|||"),je(p,function(s){if(""!==s||1===p.length){var y,v={},x=oe.createElementNS(Pe,"tspan");if(a.test(s)&&(y=s.match(a)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),d(x,"style",y)),l.test(s)&&!r&&(d(x,"onclick",'location.href="'+s.match(l)[1]+'"'),f(x,{cursor:"pointer"})),s=(s.replace(/<(.|\n)*?>/g,"")||" ").replace(/</g,"<").replace(/>/g,">")," "!==s&&(x.appendChild(oe.createTextNode(s)),m?v.dx=0:v.x=h,d(x,v),!m&&o&&(!Ae&&r&&f(x,{display:"block"}),d(x,"dy",g||n.fontMetrics(/px$/.test(x.style.fontSize)?x.style.fontSize:c.fontSize).h,Se&&x.offsetHeight)),e.appendChild(x),m++,u))for(var b,w,s=s.replace(/([^\^])-/g,"$1- ").split(" "),v=s.length>1&&"nowrap"!==c.whiteSpace,k=t._clipHeight,S=[],T=i(g||16),C=1;v&&(s.length||S.length);)delete t.bBox,b=t.getBBox(),w=b.width,!Ae&&n.forExport&&(w=n.measureSpanWidth(x.firstChild.data,t.styles)),b=w>u,b&&1!==s.length?(x.removeChild(x.firstChild),S.unshift(s.pop())):(s=S,S=[],s.length&&(C++,k&&C*T>k?(s=["..."],t.attr("title",t.textStr)):(x=oe.createElementNS(Pe,"tspan"),d(x,{dy:T,x:h}),y&&d(x,"style",y),e.appendChild(x),w>u&&(u=w)))),s.length&&x.appendChild(oe.createTextNode(s.join(" ").replace(/- /g,"-")))}})})},button:function(i,n,r,s,o,a,l,h,c){var d,u,p,f,g,m,y=this.label(i,n,r,c,null,null,null,null,"button"),v=0,i={x1:0,y1:0,x2:0,y2:1},o=e({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:i,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},o);return p=o.style,delete o.style,a=e(o,{stroke:"#68A",fill:{linearGradient:i,stops:[[0,"#FFF"],[1,"#ACF"]]}},a),f=a.style,delete a.style,l=e(o,{stroke:"#68A",fill:{linearGradient:i,stops:[[0,"#9BD"],[1,"#CDF"]]}},l),g=l.style,delete l.style,h=e(o,{style:{color:"#CCC"}},h),m=h.style,delete h.style,Ze(y.element,we?"mouseover":"mouseenter",function(){3!==v&&y.attr(a).css(f)}),Ze(y.element,we?"mouseout":"mouseleave",function(){3!==v&&(d=[o,a,l][v],u=[p,f,g][v],y.attr(d).css(u))}),y.setState=function(t){(y.state=v=t)?2===t?y.attr(l).css(g):3===t&&y.attr(h).css(m):y.attr(o).css(p)},y.on("click",function(){3!==v&&s.call(y)}).attr(o).css(t({cursor:"default"},p))},crispLine:function(t,e){return t[1]===t[4]&&(t[1]=t[4]=he(t[1])-e%2/2),t[2]===t[5]&&(t[2]=t[5]=he(t[2])+e%2/2),t},path:function(e){var i={fill:Be};return s(e)?i.d=e:r(e)&&t(i,e),this.createElement("path").attr(i)},circle:function(t,e,i){return t=r(t)?t:{x:t,y:e,r:i},this.createElement("circle").attr(t)},arc:function(t,e,i,n,s,o){return r(t)&&(e=t.y,i=t.r,n=t.innerR,s=t.start,o=t.end,t=t.x),t=this.symbol("arc",t||0,e||0,i||0,i||0,{innerR:n||0,start:s||0,end:o||0}),t.r=i,t},rect:function(t,e,i,n,s,o){return s=r(t)?t.r:s,s=this.createElement("rect").attr({rx:s,ry:s,fill:Be}),s.attr(r(t)?t:s.crisp(o,t,e,ue(i,0),ue(n,0)))},setSize:function(t,e,i){var n=this.alignedObjects,r=n.length;for(this.width=t,this.height=e,this.boxWrapper[p(i,!0)?"animate":"attr"]({width:t,height:e});r--;)n[r].align()},g:function(t){var e=this.createElement("g");return c(t)?e.attr({"class":"highcharts-"+t}):e},image:function(e,i,n,r,s){var o={preserveAspectRatio:Be};return arguments.length>1&&t(o,{x:i,y:n,width:r,height:s}),o=this.createElement("image").attr(o),o.element.setAttributeNS?o.element.setAttributeNS("http://www.w3.org/1999/xlink","href",e):o.element.setAttribute("hc-svg-href",e),o},symbol:function(e,i,n,r,s,o){var a,l,h,c=this.symbols[e],c=c&&c(he(i),he(n),r,s,o),d=/^url\((.*?)\)$/;return c?(a=this.path(c),t(a,{symbolName:e,x:i,y:n,width:r,height:s}),o&&t(a,o)):d.test(e)&&(h=function(t,e){t.element&&(t.attr({width:e[0],height:e[1]}),t.alignByTranslate||t.translate(he((r-e[0])/2),he((s-e[1])/2)))},l=e.match(d)[1],e=De[l],a=this.image(l).attr({x:i,y:n}),a.isImg=!0,e?h(a,e):(a.attr({width:0,height:0}),g("img",{onload:function(){h(a,De[l]=[this.width,this.height])},src:l}))),a},symbols:{circle:function(t,e,i,n){var r=.166*i;return["M",t+i/2,e,"C",t+i+r,e,t+i+r,e+n,t+i/2,e+n,"C",t-r,e+n,t-r,e,t+i/2,e,"Z"]},square:function(t,e,i,n){return["M",t,e,"L",t+i,e,t+i,e+n,t,e+n,"Z"]},triangle:function(t,e,i,n){return["M",t+i/2,e,"L",t+i,e+n,t,e+n,"Z"]},"triangle-down":function(t,e,i,n){return["M",t,e,"L",t+i,e,t+i/2,e+n,"Z"]},diamond:function(t,e,i,n){return["M",t+i/2,e,"L",t+i,e+n/2,t+i/2,e+n,t,e+n/2,"Z"]},arc:function(t,e,i,n,r){var s=r.start,i=r.r||i||n,o=r.end-.001,n=r.innerR,a=r.open,l=ge(s),h=me(s),c=ge(o),o=me(o),r=r.end-st?t+4:he(1.2*t),e=he(.8*t);return{h:t,b:e}},label:function(i,n,r,s,o,a,l,h,d){function u(){var t,i;t=P.element.style,y=(void 0===v||void 0===x||C.styles.textAlign)&&P.getBBox(),C.width=(v||y.width||0)+2*L+M,C.height=(x||y.height||0)+2*L,k=L+T.fontMetrics(t&&t.fontSize).b,S&&(m||(t=he(-A*L),i=h?-k:0,C.box=m=s?T.symbol(s,t,i,C.width,C.height,D):T.rect(t,i,C.width,C.height,0,D[_e]),m.add(C)),m.isImg||m.attr(e({width:C.width,height:C.height},D)),D=null)}function p(){var t,e=C.styles,e=e&&e.textAlign,i=M+L*(1-A);t=h?0:k,!c(v)||"center"!==e&&"right"!==e||(i+={center:.5,right:1}[e]*(v-y.width)),(i!==P.x||t!==P.y)&&P.attr({x:i,y:t}),P.x=i,P.y=t}function f(t,e){m?m.attr(t,e):D[t]=e}function g(){P.add(C),C.attr({text:i,x:n,y:r}),m&&c(o)&&C.attr({anchorX:o,anchorY:a})}var m,y,v,x,b,w,k,S,T=this,C=T.g(d),P=T.text("",0,0,l).attr({zIndex:1}),A=0,L=3,M=0,I=0,D={},l=C.attrSetters;Ze(C,"add",g),l.width=function(t){return v=t,!1},l.height=function(t){return x=t,!1},l.padding=function(t){return c(t)&&t!==L&&(L=t,p()),!1},l.paddingLeft=function(t){return c(t)&&t!==M&&(M=t,p()),!1},l.align=function(t){return A={left:0,center:.5,right:1}[t],!1},l.text=function(t,e){return P.attr(e,t),u(),p(),!1},l[_e]=function(t,e){return S=!0,I=t%2/2,f(e,t),!1},l.stroke=l.fill=l.r=function(t,e){return"fill"===e&&(S=!0),f(e,t),!1},l.anchorX=function(t,e){return o=t,f(e,t+I-b),!1},l.anchorY=function(t,e){return a=t,f(e,t-w),!1},l.x=function(t){return C.x=t,t-=A*((v||y.width)+L),b=he(t),C.attr("translateX",b),!1},l.y=function(t){return w=C.y=he(t),C.attr("translateY",w),!1};var E=C.css;return t(C,{css:function(t){if(t){var i={},t=e(t);je("fontSize,fontWeight,fontFamily,color,lineHeight,width,textDecoration,textShadow".split(","),function(e){t[e]!==_&&(i[e]=t[e],delete t[e])}),P.css(i)}return E.call(C,t)},getBBox:function(){return{width:y.width+2*L,height:y.height+2*L,x:y.x-L,y:y.y-L}},shadow:function(t){return m&&m.shadow(t),C},destroy:function(){Ke(C,"add",g),Ke(C.element,"mouseenter"),Ke(C.element,"mouseleave"),P&&(P=P.destroy()),m&&(m=m.destroy()),O.prototype.destroy.call(C),C=T=u=p=f=g=null}})}},H=ai,t(O.prototype,{htmlCss:function(e){var i=this.element;return(i=e&&"SPAN"===i.tagName&&e.width)&&(delete e.width,this.textWidth=i,this.updateTransform()),this.styles=t(this.styles,e),f(this.element,e),this},htmlGetBBox:function(){var t=this.element,e=this.bBox;return e||("text"===t.nodeName&&(t.style.position="absolute"),e=this.bBox={x:t.offsetLeft,y:t.offsetTop,width:t.offsetWidth,height:t.offsetHeight}),e},htmlUpdateTransform:function(){if(this.added){var t=this.renderer,e=this.element,n=this.translateX||0,r=this.translateY||0,s=this.x||0,o=this.y||0,a=this.textAlign||"left",l={left:0,center:.5,right:1}[a],h=this.shadows;if(f(e,{marginLeft:n,marginTop:r}),h&&je(h,function(t){f(t,{marginLeft:n+1,marginTop:r+1})}),this.inverted&&je(e.childNodes,function(i){t.invertChild(i,e)}),"SPAN"===e.tagName){var d,u=this.rotation,g=i(this.textWidth),m=[u,a,e.innerHTML,this.textWidth].join(",");m!==this.cTT&&(d=t.fontMetrics(e.style.fontSize).b,c(u)&&this.setSpanRotation(u,l,d),h=p(this.elemWidth,e.offsetWidth),h>g&&/[ \-]/.test(e.textContent||e.innerText)&&(f(e,{width:g+"px",display:"block",whiteSpace:"normal"}),h=g),this.getSpanCorrection(h,d,l,u,a)),f(e,{left:s+(this.xCorr||0)+"px",top:o+(this.yCorr||0)+"px"}),Se&&(d=e.offsetHeight),this.cTT=m}}else this.alignOnAdd=!0},setSpanRotation:function(t,e,i){var n={},r=we?"-ms-transform":Se?"-webkit-transform":Te?"MozTransform":be?"-o-transform":"";n[r]=n.transform="rotate("+t+"deg)",n[r+(Te?"Origin":"-origin")]=100*e+"% "+i+"px",f(this.element,n)},getSpanCorrection:function(t,e,i){this.xCorr=-t*i,this.yCorr=-e}}),t(ai.prototype,{html:function(e,i,n){var r=X.chart.style,s=this.createElement("span"),o=s.attrSetters,a=s.element,l=s.renderer;return o.text=function(t){return t!==a.innerHTML&&delete this.bBox,a.innerHTML=t,!1},o.x=o.y=o.align=o.rotation=function(t,e){return"align"===e&&(e="textAlign"),s[e]=t,s.htmlUpdateTransform(),!1},s.attr({text:e,x:he(i),y:he(n)}).css({position:"absolute",whiteSpace:"nowrap",fontFamily:r.fontFamily,fontSize:r.fontSize}),s.css=s.htmlCss,l.isSVG&&(s.add=function(e){var i,n=l.box.parentNode,r=[];if(this.parentGroup=e){if(i=e.div,!i){for(;e;)r.push(e),e=e.parentGroup;je(r.reverse(),function(e){var r;i=e.div=e.div||g(ze,{className:d(e.element,"class")},{position:"absolute",left:(e.translateX||0)+"px",top:(e.translateY||0)+"px"},i||n),r=i.style,t(e.attrSetters,{translateX:function(t){r.left=t+"px"},translateY:function(t){r.top=t+"px"},visibility:function(t,e){r[e]=t}})})}}else i=n;return i.appendChild(a),s.added=!0,s.alignOnAdd&&s.htmlUpdateTransform(),s}),s}});var li;if(!Ae&&!Me){Highcharts.VMLElement=li={init:function(t,e){var i=["<",e,' filled="f" stroked="f"'],n=["position: ","absolute",";"],r=e===ze;("shape"===e||r)&&n.push("left:0;top:0;width:1px;height:1px;"),n.push("visibility: ",r?"hidden":"visible"),i.push(' style="',n.join(""),'"/>'),e&&(i=r||"span"===e||"img"===e?i.join(""):t.prepVML(i),this.element=g(i)),this.renderer=t,this.attrSetters={}},add:function(t){var e=this.renderer,i=this.element,n=e.box,n=t?t.element||t:n;return t&&t.inverted&&e.invertChild(i,n),n.appendChild(i),this.added=!0,this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform(),Qe(this,"add"),this},updateTransform:O.prototype.htmlUpdateTransform,setSpanRotation:function(){var t=this.rotation,e=ge(t*ve),i=me(t*ve);f(this.element,{filter:t?["progid:DXImageTransform.Microsoft.Matrix(M11=",e,", M12=",-i,", M21=",i,", M22=",e,", sizingMethod='auto expand')"].join(""):Be})},getSpanCorrection:function(t,e,i,n,r){var s,o=n?ge(n*ve):1,a=n?me(n*ve):0,l=p(this.elemHeight,this.element.offsetHeight);this.xCorr=0>o&&-t,this.yCorr=0>a&&-l,s=0>o*a,this.xCorr+=a*e*(s?1-i:i),this.yCorr-=o*e*(n?s?i:1-i:1),r&&"left"!==r&&(this.xCorr-=t*i*(0>o?-1:1),n&&(this.yCorr-=l*i*(0>a?-1:1)),f(this.element,{textAlign:r}))},pathToVML:function(t){for(var e=t.length,i=[];e--;)o(t[e])?i[e]=he(10*t[e])-5:"Z"===t[e]?i[e]="x":(i[e]=t[e],!t.isArc||"wa"!==t[e]&&"at"!==t[e]||(i[e+5]===i[e+7]&&(i[e+7]+=t[e+7]>t[e+5]?1:-1),i[e+6]===i[e+8]&&(i[e+8]+=t[e+8]>t[e+6]?1:-1)));return i.join(" ")||"x"},attr:function(t,e){var i,r,s,a,l,h=this.element||{},u=h.style,p=h.nodeName,f=this.renderer,m=this.symbolName,y=this.shadows,v=this.attrSetters,x=this;if(n(t)&&c(e)&&(i=t,t={},t[i]=e),n(t))i=t,x="strokeWidth"===i||"stroke-width"===i?this.strokeweight:this[i];else for(i in t)if(r=t[i],l=!1,s=v[i]&&v[i].call(this,r,i),s!==!1&&null!==r){if(s!==_&&(r=s),m&&/^(x|y|r|start|end|width|height|innerR|anchorX|anchorY)/.test(i))a||(this.symbolAttr(t),a=!0),l=!0;else if("d"===i){if(r=r||[],this.d=r.join(" "),h.path=r=this.pathToVML(r),y)for(s=y.length;s--;)y[s].path=y[s].cutOff?this.cutOffPath(r,y[s].cutOff):r;l=!0}else if("visibility"===i){if(y)for(s=y.length;s--;)y[s].style[i]=r;"DIV"===p&&(r="hidden"===r?"-999em":0,ke||(u[i]=r?"visible":"hidden"),i="top"),u[i]=r,l=!0}else"zIndex"===i?(r&&(u[i]=r),l=!0):-1!==Ye(i,["x","y","width","height"])?(this[i]=r,"x"===i||"y"===i?i={x:"left",y:"top"}[i]:r=ue(0,r),this.updateClipping?(this[i]=r,this.updateClipping()):u[i]=r,l=!0):"class"===i&&"DIV"===p?h.className=r:"stroke"===i?(r=f.color(r,h,i),i="strokecolor"):"stroke-width"===i||"strokeWidth"===i?(h.stroked=r?!0:!1,i="strokeweight",this[i]=r,o(r)&&(r+="px")):"dashstyle"===i?((h.getElementsByTagName("stroke")[0]||g(f.prepVML([""]),null,null,h))[i]=r||"solid",this.dashstyle=r,l=!0):"fill"===i?"SPAN"===p?u.color=r:"IMG"!==p&&(h.filled=r!==Be?!0:!1,r=f.color(r,h,i,this),i="fillcolor"):"opacity"===i?l=!0:"shape"===p&&"rotation"===i?(this[i]=h.style[i]=r,h.style.left=-he(me(r*ve)+1)+"px",h.style.top=he(ge(r*ve))+"px"):("translateX"===i||"translateY"===i||"rotation"===i)&&(this[i]=r,this.updateTransform(),l=!0);l||(ke?h[i]=r:d(h,i,r))}return x},clip:function(t){var e,i=this;return t?(e=t.members,h(e,i),e.push(i),i.destroyClip=function(){h(e,i)},t=t.getCSS(i)):(i.destroyClip&&i.destroyClip(),t={clip:ke?"inherit":"rect(auto)"}),i.css(t)},css:O.prototype.htmlCss,safeRemoveChild:function(t){t.parentNode&&L(t)},destroy:function(){return this.destroyClip&&this.destroyClip(),O.prototype.destroy.apply(this)},on:function(t,e){return this.element["on"+t]=function(){var t=ae.event;t.target=t.srcElement,e(t)},this},cutOffPath:function(t,e){var n,t=t.split(/[ ,]/);return n=t.length,(9===n||11===n)&&(t[n-4]=t[n-2]=i(t[n-2])-10*e),t.join(" ")},shadow:function(t,e,n){var r,s,o,a,l,h,c,d=[],u=this.element,f=this.renderer,m=u.style,y=u.path;if(y&&"string"!=typeof y.value&&(y="x"),l=y,t){for(h=p(t.width,3),c=(t.opacity||.15)/h,r=1;3>=r;r++)a=2*h+1-2*r,n&&(l=this.cutOffPath(y.value,a+.5)),o=[''],s=g(f.prepVML(o),null,{left:i(m.left)+p(t.offsetX,1),top:i(m.top)+p(t.offsetY,1)}),n&&(s.cutOff=a+1),o=[''],g(f.prepVML(o),null,null,s),e?e.element.appendChild(s):u.parentNode.insertBefore(s,u),d.push(s);this.shadows=d}return this}},li=m(O,li);var hi={Element:li,isIE8:xe.indexOf("MSIE 8.0")>-1,init:function(t,e,i){var n,r;if(this.alignedObjects=[],n=this.createElement(ze),r=n.element,r.style.position="relative",t.appendChild(n.element),this.isVML=!0,this.box=r,this.boxWrapper=n,this.cache={},this.setSize(e,i,!1),!oe.namespaces.hcv){oe.namespaces.add("hcv","urn:schemas-microsoft-com:vml");try{oe.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}catch(s){oe.styleSheets[0].cssText+="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}}},isHidden:function(){return!this.box.offsetWidth},clipRect:function(e,i,n,s){var o=this.createElement(),a=r(e);return t(o,{members:[],left:(a?e.x:e)+1,top:(a?e.y:i)+1,width:(a?e.width:n)-1,height:(a?e.height:s)-1,getCSS:function(e){var i=e.element,n=i.nodeName,e=e.inverted,r=this.top-("shape"===n?i.offsetTop:0),s=this.left,i=s+this.width,o=r+this.height,r={clip:"rect("+he(e?s:r)+"px,"+he(e?o:i)+"px,"+he(e?i:o)+"px,"+he(e?r:s)+"px)"};return!e&&ke&&"DIV"===n&&t(r,{width:i+"px",height:o+"px"}),r},updateClipping:function(){je(o.members,function(t){t.css(o.getCSS(t))})}})},color:function(t,e,i,n){var r,s,o,a=this,l=/^rgba/,h=Be;if(t&&t.linearGradient?o="gradient":t&&t.radialGradient&&(o="pattern"),o){var c,d,u,p,f,m,y,v,x=t.linearGradient||t.radialGradient,b="",t=t.stops,w=[],k=function(){s=[''],g(a.prepVML(s),null,null,e)};if(u=t[0],v=t[t.length-1],u[0]>0&&t.unshift([0,u[1]]),v[0]<1&&t.push([1,v[1]]),je(t,function(t,e){l.test(t[1])?(r=oi(t[1]),c=r.get("rgb"),d=r.get("a")):(c=t[1],d=1),w.push(100*t[0]+"% "+c),e?(f=d,m=c):(p=d,y=c)}),"fill"===i)if("gradient"===o)i=x.x1||x[0]||0,t=x.y1||x[1]||0,u=x.x2||x[2]||0,x=x.y2||x[3]||0,b='angle="'+(90-180*le.atan((x-t)/(u-i))/ye)+'"',k();else{var S,h=x.r,T=2*h,C=2*h,P=x.cx,A=x.cy,L=e.radialReference,h=function(){L&&(S=n.getBBox(),P+=(L[0]-S.x)/S.width-.5,A+=(L[1]-S.y)/S.height-.5,T*=L[2]/S.width,C*=L[2]/S.height),b='src="'+X.global.VMLRadialGradientURL+'" size="'+T+","+C+'" origin="0.5,0.5" position="'+P+","+A+'" color2="'+y+'" ',k()};n.added?h():Ze(n,"add",h),h=m}else h=c}else l.test(t)&&"IMG"!==e.tagName?(r=oi(t),s=["<",i,' opacity="',r.get("a"),'"/>'],g(this.prepVML(s),null,null,e),h=r.get("rgb")):(h=e.getElementsByTagName(i),h.length&&(h[0].opacity=1,h[0].type="solid"),h=t);return h},prepVML:function(t){var e=this.isIE8,t=t.join("");return e?(t=t.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),t=-1===t.indexOf('style="')?t.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'):t.replace('style="','style="display:inline-block;behavior:url(#default#VML);')):t=t.replace("<","1&&s.attr({x:e,y:i,width:n,height:r}),s},rect:function(t,e,i,n,s,o){var a=this.symbol("rect");return a.r=r(t)?t.r:s,a.attr(r(t)?t:a.crisp(o,t,e,ue(i,0),ue(n,0)))},invertChild:function(t,e){var n=e.style;f(t,{flip:"x",left:i(n.width)-1,top:i(n.height)-1,rotation:-90})},symbols:{arc:function(t,e,i,n,r){var s=r.start,o=r.end,a=r.r||i||n,i=r.innerR,n=ge(s),l=me(s),h=ge(o),c=me(o);return o-s===0?["x"]:(s=["wa",t-a,e-a,t+a,e+a,t+a*n,e+a*l,t+a*h,e+a*c],r.open&&!i&&s.push("e","M",t,e),s.push("at",t-i,e-i,t+i,e+i,t+i*h,e+i*c,t+i*n,e+i*l,"x","e"),s.isArc=!0,s)},circle:function(t,e,i,n,r){return r&&(i=n=2*r.r),r&&r.isCircle&&(t-=i/2,e-=n/2),["wa",t,e,t+i,e+n,t+i,e+n/2,t+i,e+n/2,"e"]},rect:function(t,e,i,n,r){var s,o=t+i,a=e+n;return c(r)&&r.r?(s=pe(r.r,i,n),o=["M",t+s,e,"L",o-s,e,"wa",o-2*s,e,o,e+2*s,o-s,e,o,e+s,"L",o,a-s,"wa",o-2*s,a-2*s,o,a,o,a-s,o-s,a,"L",t+s,a,"wa",t,a-2*s,t+2*s,a,t+s,a,t,a-s,"L",t,e+s,"wa",t,e,t+2*s,e+2*s,t,e+s,t+s,e,"x","e"]):o=ai.prototype.symbols.square.apply(0,arguments),o}}};Highcharts.VMLRenderer=li=function(){this.init.apply(this,arguments)},li.prototype=e(ai.prototype,hi),H=li}ai.prototype.measureSpanWidth=function(t,e){var i,n=oe.createElement("span");return i=oe.createTextNode(t),n.appendChild(i),f(n,e),this.box.appendChild(n),i=n.offsetWidth,L(n),i};var ci;Me&&(Highcharts.CanVGRenderer=li=function(){Pe="http://www.w3.org/1999/xhtml"},li.prototype.symbols={},ci=function(){function t(){var t,i=e.length;for(t=0;i>t;t++)e[t]();e=[]}var e=[];return{push:function(i,n){0===e.length&&$e(n,t),e.push(i)}}}(),H=li),R.prototype={addLabel:function(){var e,i=this.axis,n=i.options,r=i.chart,s=i.horiz,a=i.categories,h=i.names,d=this.pos,u=n.labels,f=i.tickPositions,s=s&&a&&!u.step&&!u.staggerLines&&!u.rotation&&r.plotWidth/f.length||!s&&(r.margin[3]||.33*r.chartWidth),g=d===f[0],m=d===f[f.length-1],h=a?p(a[d],h[d],d):d,a=this.label,y=f.info;i.isDatetimeAxis&&y&&(e=n.dateTimeLabelFormats[y.higherRanks[d]||y.unitName]),this.isFirst=g,this.isLast=m,n=i.labelFormatter.call({axis:i,chart:r,isFirst:g,isLast:m,dateTimeLabelFormat:e,value:i.isLog?I(l(h)):h}),d=s&&{width:ue(1,he(s-2*(u.padding||10)))+"px"},d=t(d,u.style),c(a)?a&&a.attr({text:n}).css(d):(e={align:i.labelAlign},o(u.rotation)&&(e.rotation=u.rotation),s&&u.ellipsis&&(e._clipHeight=i.len/f.length),this.label=c(n)&&u.enabled?r.renderer.text(n,0,0,u.useHTML).attr(e).css(d).add(i.labelGroup):null)},getLabelSize:function(){var t=this.label,e=this.axis;return t?t.getBBox()[e.horiz?"height":"width"]:0},getLabelSides:function(){var t=this.label.getBBox(),e=this.axis,i=e.horiz,n=e.options.labels,t=i?t.width:t.height,e=i?t*{left:0,center:.5,right:1}[e.labelAlign]-n.x:t;return[-e,t-e]},handleOverflow:function(t,e){var i,n=!0,r=this.axis,s=this.isFirst,o=this.isLast,a=r.horiz?e.x:e.y,l=r.reversed,h=r.tickPositions,c=this.getLabelSides(),d=c[0],c=c[1],u=r.pos,p=u+r.len,f=this.label.line||0,g=r.labelEdge,m=r.justifyLabels&&(s||o);return g[f]===_||a+d>g[f]?g[f]=a+c:m||(n=!1),m&&(i=(r=r.ticks[h[t+(s?1:-1)]])&&r.label.xy&&r.label.xy.x+r.getLabelSides()[s?0:1],h=i,s&&!l||o&&l?u>a+d&&(a=u-d,r&&a+c>h&&(n=!1)):a+c>p&&(a=p-c,r&&h>a+d&&(n=!1)),e.x=a),n},getPosition:function(t,e,i,n){var r=this.axis,s=r.chart,o=n&&s.oldChartHeight||s.chartHeight;return{x:t?r.translate(e+i,null,null,n)+r.transB:r.left+r.offset+(r.opposite?(n&&s.oldChartWidth||s.chartWidth)-r.right-r.left:0),y:t?o-r.bottom+r.offset-(r.opposite?r.height:0):o-r.translate(e+i,null,null,n)-r.transB}},getLabelPosition:function(t,e,i,n,r,s,o,a){var l=this.axis,h=l.transA,d=l.reversed,u=l.staggerLines,p=l.chart.renderer.fontMetrics(r.style.fontSize).b,f=r.rotation,t=t+r.x-(s&&n?s*h*(d?-1:1):0),e=e+r.y-(s&&!n?s*h*(d?1:-1):0);return f&&2===l.side&&(e-=p-p*ge(f*ve)),!c(r.y)&&!f&&(e+=p-i.getBBox().height/2),u&&(i.line=o/(a||1)%u,e+=i.line*(l.labelOffset/u)),{x:t,y:e}},getMarkPath:function(t,e,i,n,r,s){return s.crispLine(["M",t,e,"L",t+(r?0:-i),e+(r?i:0)],n)},render:function(t,e,i){var n=this.axis,r=n.options,s=n.chart.renderer,o=n.horiz,a=this.type,l=this.label,h=this.pos,c=r.labels,d=this.gridLine,u=a?a+"Grid":"grid",f=a?a+"Tick":"tick",g=r[u+"LineWidth"],m=r[u+"LineColor"],y=r[u+"LineDashStyle"],v=r[f+"Length"],u=r[f+"Width"]||0,x=r[f+"Color"],b=r[f+"Position"],f=this.mark,w=c.step,k=!0,S=n.tickmarkOffset,T=this.getPosition(o,h,S,e),C=T.x,T=T.y,P=o&&C===n.pos+n.len||!o&&T===n.pos?-1:1;this.isActive=!0,g&&(h=n.getPlotLinePath(h+S,g*P,e,!0),d===_&&(d={stroke:m,"stroke-width":g},y&&(d.dashstyle=y),a||(d.zIndex=1),e&&(d.opacity=0),this.gridLine=d=g?s.path(h).attr(d).add(n.gridGroup):null),!e&&d&&h&&d[this.isNew?"attr":"animate"]({d:h,opacity:i})),u&&v&&("inside"===b&&(v=-v),n.opposite&&(v=-v),a=this.getMarkPath(C,T,v,u*P,o,s),f?f.animate({d:a,opacity:i}):this.mark=s.path(a).attr({stroke:x,"stroke-width":u,opacity:i}).add(n.axisGroup)),l&&!isNaN(C)&&(l.xy=T=this.getLabelPosition(C,T,l,o,c,S,t,w),this.isFirst&&!this.isLast&&!p(r.showFirstLabel,1)||this.isLast&&!this.isFirst&&!p(r.showLastLabel,1)?k=!1:!n.isRadial&&!c.step&&!c.rotation&&!e&&0!==i&&(k=this.handleOverflow(t,T)),w&&t%w&&(k=!1),k&&!isNaN(T.y)?(T.opacity=i,l[this.isNew?"attr":"animate"](T),this.isNew=!1):l.attr("y",-9999))},destroy:function(){A(this,this.axis)}};var di=function(t,e){this.axis=t,e&&(this.options=e,this.id=e.id)};di.prototype={render:function(){var t,i=this,n=i.axis,r=n.horiz,s=(n.pointRange||0)/2,o=i.options,l=o.label,h=i.label,d=o.width,u=o.to,f=o.from,g=c(f)&&c(u),m=o.value,y=o.dashStyle,v=i.svgElem,x=[],b=o.color,w=o.zIndex,k=o.events,S=n.chart.renderer;if(n.isLog&&(f=a(f),u=a(u),m=a(m)),d)x=n.getPlotLinePath(m,d),s={stroke:b,"stroke-width":d},y&&(s.dashstyle=y);else{if(!g)return;f=ue(f,n.min-s),u=pe(u,n.max+s),x=n.getPlotBandPath(f,u,o),s={fill:b},o.borderWidth&&(s.stroke=o.borderColor,s["stroke-width"]=o.borderWidth)}if(c(w)&&(s.zIndex=w),v)x?v.animate({d:x},null,v.onGetPath):(v.hide(),v.onGetPath=function(){v.show()},h&&(i.label=h=h.destroy()));else if(x&&x.length&&(i.svgElem=v=S.path(x).attr(s).add(),k))for(t in o=function(t){v.on(t,function(e){k[t].apply(i,[e])})},k)o(t);return l&&c(l.text)&&x&&x.length&&n.width>0&&n.height>0?(l=e({align:r&&g&&"center",x:r?!g&&4:10,verticalAlign:!r&&g&&"middle",y:r?g?16:10:g?6:-4,rotation:r&&!g&&90},l),h||(i.label=h=S.text(l.text,0,0,l.useHTML).attr({align:l.textAlign||l.align,rotation:l.rotation,zIndex:w}).css(l.style).add()),n=[x[1],x[4],p(x[6],x[1])],x=[x[2],x[5],p(x[7],x[2])],r=C(n),g=C(x),h.align(l,!1,{x:r,y:g,width:P(n)-r,height:P(x)-g}),h.show()):h&&h.hide(),i},destroy:function(){h(this.axis.plotLinesAndBands,this),delete this.axis,A(this)}},z.prototype={defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,gridLineColor:"#C0C0C0",labels:Xe,lineColor:"#C0D0E0",lineWidth:1,minPadding:.01,maxPadding:.01,minorGridLineColor:"#E0E0E0",minorGridLineWidth:1,minorTickColor:"#A0A0A0",minorTickLength:2,minorTickPosition:"outside",startOfWeek:1,startOnTick:!1,tickColor:"#C0D0E0",tickLength:5,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",tickWidth:1,title:{align:"middle",style:{color:"#4d759e",fontWeight:"bold"}},type:"linear"},defaultYAxisOptions:{endOnTick:!0,gridLineWidth:1,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8,y:3},lineWidth:0,maxPadding:.05,minPadding:.05,startOnTick:!0,tickWidth:0,title:{rotation:270,text:"Values"},stackLabels:{enabled:!1,formatter:function(){return y(this.total,-1)},style:Xe.style}},defaultLeftAxisOptions:{labels:{x:-8,y:null},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:8,y:null},title:{rotation:90}},defaultBottomAxisOptions:{labels:{x:0,y:14},title:{rotation:0}},defaultTopAxisOptions:{labels:{x:0,y:-5},title:{rotation:0}},init:function(t,e){var i=e.isX;this.horiz=t.inverted?!i:i,this.coll=(this.isXAxis=i)?"xAxis":"yAxis",this.opposite=e.opposite,this.side=e.side||(this.horiz?this.opposite?0:2:this.opposite?1:3),this.setOptions(e);var n=this.options,r=n.type;this.labelFormatter=n.labels.formatter||this.defaultLabelFormatter,this.userOptions=e,this.minPixelPadding=0,this.chart=t,this.reversed=n.reversed,this.zoomEnabled=n.zoomEnabled!==!1,this.categories=n.categories||"category"===r,this.names=[],this.isLog="logarithmic"===r,this.isDatetimeAxis="datetime"===r,this.isLinked=c(n.linkedTo),this.tickmarkOffset=this.categories&&"between"===n.tickmarkPlacement?.5:0,this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},this.len=0,this.minRange=this.userMinRange=n.minRange||n.maxZoom,this.range=n.range,this.offset=n.offset||0,this.stacks={},this.oldStacks={},this.stackExtremes={},this.min=this.max=null,this.crosshair=p(n.crosshair,u(t.options.tooltip.crosshairs)[i?0:1],!1);var s,n=this.options.events;-1===Ye(this,t.axes)&&(t.axes.push(this),t[this.coll].push(this)),this.series=this.series||[],t.inverted&&i&&this.reversed===_&&(this.reversed=!0),this.removePlotLine=this.removePlotBand=this.removePlotBandOrLine;for(s in n)Ze(this,s,n[s]);this.isLog&&(this.val2lin=a,this.lin2val=l)},setOptions:function(t){this.options=e(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],e(X[this.coll],t))},defaultLabelFormatter:function(){var t,e=this.axis,i=this.value,n=e.categories,r=this.dateTimeLabelFormat,s=X.lang.numericSymbols,o=s&&s.length,a=e.options.labels.format,e=e.isLog?i:e.tickInterval;if(a)t=b(a,this);else if(n)t=i;else if(r)t=G(r,i);else if(o&&e>=1e3)for(;o--&&t===_;)n=Math.pow(1e3,o+1),e>=n&&null!==s[o]&&(t=y(i/n,-1)+s[o]);return t===_&&(t=i>=1e4?y(i,0):y(i,-1,_,"")),t},getSeriesExtremes:function(){var t=this,e=t.chart;t.hasVisibleSeries=!1,t.dataMin=t.dataMax=null,t.stackExtremes={},t.buildStacks(),je(t.series,function(i){if(i.visible||!e.options.chart.ignoreHiddenSeries){var n;n=i.options.threshold;var r;t.hasVisibleSeries=!0,t.isLog&&0>=n&&(n=null),t.isXAxis?(n=i.xData,n.length&&(t.dataMin=pe(p(t.dataMin,n[0]),C(n)),t.dataMax=ue(p(t.dataMax,n[0]),P(n)))):(i.getExtremes(),r=i.dataMax,i=i.dataMin,c(i)&&c(r)&&(t.dataMin=pe(p(t.dataMin,i),i),t.dataMax=ue(p(t.dataMax,r),r)),c(n)&&(t.dataMin>=n?(t.dataMin=n,t.ignoreMinPadding=!0):t.dataMaxt||t>h+this.width)&&(a=!0)):(t=h,i=u-this.right,(c>s||s>c+this.height)&&(a=!0)),a&&!n?null:l.renderer.crispLine(["M",t,s,"L",i,o],e||1)},getLinearTickPositions:function(t,e,i){for(var n,e=I(ce(e/t)*t),i=I(de(i/t)*t),r=[];i>=e&&(r.push(e),e=I(e+t),e!==n);)n=e;return r},getMinorTickPositions:function(){var t,e=this.options,i=this.tickPositions,n=this.minorTickInterval,r=[];if(this.isLog)for(t=i.length,e=1;t>e;e++)r=r.concat(this.getLogTickPositions(n,i[e-1],i[e],!0));else if(this.isDatetimeAxis&&"auto"===e.minorTickInterval)r=r.concat(this.getTimeTicks(this.normalizeTimeTickInterval(n),this.min,this.max,e.startOfWeek)),r[0]=this.minRange;if(this.isXAxis&&this.minRange===_&&!this.isLog&&(c(o.min)||c(o.max)?this.minRange=null:(je(this.series,function(t){for(r=t.xData,i=s=t.xIncrement?1:r.length-1;i>0;i--)n=r[i]-r[i-1],(e===_||e>n)&&(e=n)}),this.minRange=pe(5*e,this.dataMax-this.dataMin))),l-al-a&&(t[0]=l-d,t[1]=p(o.min,l-d),a=P(t))}this.min=a,this.max=l},setAxisTranslation:function(t){var e,i=this.max-this.min,r=0,s=0,o=0,a=this.linkedParent,l=!!this.categories,h=this.transA;(this.isXAxis||l)&&(a?(s=a.minPointOffset,o=a.pointRangePadding):je(this.series,function(t){var a=ue(t.pointRange,+l),h=t.options.pointPlacement,d=t.closestPointRange;a>i&&(a=0),r=ue(r,a),s=ue(s,n(h)?0:a/2),o=ue(o,"on"===h?0:a),!t.noSharedTooltip&&c(d)&&(e=c(e)?pe(e,d):d)}),a=this.ordinalSlope&&e?this.ordinalSlope/e:1,this.minPointOffset=s*=a,this.pointRangePadding=o*=a,this.pointRange=pe(r,i),this.closestPointRange=e),t&&(this.oldTransA=h),this.translationSlope=this.transA=h=this.len/(i+o||1),this.transB=this.horiz?this.left:this.bottom,this.minPixelPadding=h*s},setTickPositions:function(t){var e,i=this,n=i.chart,r=i.options,s=i.isLog,o=i.isDatetimeAxis,l=i.isXAxis,h=i.isLinked,d=i.options.tickPositioner,u=r.maxPadding,f=r.minPadding,g=r.tickInterval,m=r.minTickInterval,y=r.tickPixelInterval,v=i.categories;h?(i.linkedParent=n[i.coll][r.linkedTo],n=i.linkedParent.getExtremes(),i.min=p(n.min,n.dataMin),i.max=p(n.max,n.dataMax),r.type!==i.linkedParent.options.type&&M(11,1)):(i.min=p(i.userMin,r.min,i.dataMin),i.max=p(i.userMax,r.max,i.dataMax)),s&&(!t&&pe(i.min,p(i.dataMin,i.min))<=0&&M(10,1),i.min=I(a(i.min)),i.max=I(a(i.max))),i.range&&c(i.max)&&(i.userMin=i.min=ue(i.min,i.max-i.range),i.userMax=i.max,i.range=null),i.beforePadding&&i.beforePadding(),i.adjustForMinRange(),!v&&!i.usePercentage&&!h&&c(i.min)&&c(i.max)&&(n=i.max-i.min)&&(c(r.min)||c(i.userMin)||!f||!(i.dataMin<0)&&i.ignoreMinPadding||(i.min-=n*f),c(r.max)||c(i.userMax)||!u||!(i.dataMax>0)&&i.ignoreMaxPadding||(i.max+=n*u)),i.min===i.max||void 0===i.min||void 0===i.max?i.tickInterval=1:h&&!g&&y===i.linkedParent.options.tickPixelInterval?i.tickInterval=i.linkedParent.tickInterval:(i.tickInterval=p(g,v?1:(i.max-i.min)*y/ue(i.len,y)),!c(g)&&i.lenue(2*i.len,200)&&M(19,!0),t=o?i.getTimeTicks(i.normalizeTimeTickInterval(i.tickInterval,r.units),i.min,i.max,r.startOfWeek,i.ordinalPositions,i.closestPointRange,!0):s?i.getLogTickPositions(i.tickInterval,i.min,i.max):i.getLinearTickPositions(i.tickInterval,i.min,i.max),e&&t.splice(1,t.length-2),i.tickPositions=t),h||(s=t[0],o=t[t.length-1],h=i.minPointOffset||0,r.startOnTick?i.min=s:i.min-h>s&&t.shift(),r.endOnTick?i.max=o:i.max+h(e[n]||0)&&this.options.alignTicks!==!1&&(e[n]=i.length),t.maxTicks=e},adjustTickAmount:function(){var t=this._maxTicksKey,e=this.tickPositions,i=this.chart.maxTicks;if(i&&i[t]&&!this.isDatetimeAxis&&!this.categories&&!this.isLinked&&this.options.alignTicks!==!1&&this.min!==_){var n=this.tickAmount,r=e.length;if(this.tickAmount=t=i[t],t>r){for(;e.length=this.dataMax&&(e=_)),this.displayBtn=t!==_||e!==_,this.setExtremes(t,e,!1,_,{trigger:"zoom"}),!0},setAxisSize:function(){var t,e,i=this.chart,n=this.options,r=n.offsetLeft||0,s=n.offsetRight||0,o=this.horiz;this.left=e=p(n.left,i.plotLeft+r),this.top=t=p(n.top,i.plotTop),this.width=r=p(n.width,i.plotWidth-r+s),this.height=n=p(n.height,i.plotHeight),this.bottom=i.chartHeight-n-t,this.right=i.chartWidth-r-e,this.len=ue(o?r:n,0),this.pos=o?e:t},getExtremes:function(){var t=this.isLog;return{min:t?I(l(this.min)):this.min,max:t?I(l(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(t){var e=this.isLog,i=e?l(this.min):this.min,e=e?l(this.max):this.max;return i>t||null===t?t=i:t>e&&(t=e),this.translate(t,0,1,0,1)},autoLabelAlign:function(t){return t=(p(t,0)-90*this.side+720)%360,t>15&&165>t?"right":t>195&&345>t?"left":"center"},getOffset:function(){var t,e,i,n,r,s,o,a=this,l=a.chart,h=l.renderer,d=a.options,u=a.tickPositions,f=a.ticks,g=a.horiz,m=a.side,y=l.inverted?[1,0,3,2][m]:m,v=0,x=0,b=d.title,w=d.labels,k=0,S=l.axisOffset,T=l.clipOffset,C=[-1,1,1,-1][m],P=1,A=p(w.maxStaggerLines,5);if(a.hasData=t=a.hasVisibleSeries||c(a.min)&&c(a.max)&&!!u,a.showAxis=l=t||p(d.showEmpty,!0),a.staggerLines=a.horiz&&w.staggerLines,a.axisGroup||(a.gridGroup=h.g("grid").attr({zIndex:d.gridZIndex||1}).add(),a.axisGroup=h.g("axis").attr({zIndex:d.zIndex||2}).add(),a.labelGroup=h.g("axis-labels").attr({zIndex:w.zIndex||7}).add()),t||a.isLinked){if(a.labelAlign=p(w.align||a.autoLabelAlign(w.rotation)),je(u,function(t){f[t]?f[t].addLabel():f[t]=new R(a,t)}),a.horiz&&!a.staggerLines&&A&&!w.rotation){for(i=a.reversed?[].concat(u).reverse():u;A>P;){for(t=[],n=!1,w=0;w1&&(a.staggerLines=P)}je(u,function(t){(0===m||2===m||{1:"left",3:"right"}[m]===a.labelAlign)&&(k=ue(f[t].getLabelSize(),k))}),a.staggerLines&&(k*=a.staggerLines,a.labelOffset=k)}else for(i in f)f[i].destroy(),delete f[i];b&&b.text&&b.enabled!==!1&&(a.axisTitle||(a.axisTitle=h.text(b.text,0,0,b.useHTML).attr({zIndex:7,rotation:b.rotation||0,align:b.textAlign||{low:"left",middle:"center",high:"right"}[b.align]}).css(b.style).add(a.axisGroup),a.axisTitle.isNew=!0),l&&(v=a.axisTitle.getBBox()[g?"height":"width"],x=p(b.margin,g?5:10),e=b.offset),a.axisTitle[l?"show":"hide"]()),a.offset=C*p(d.offset,S[m]),a.axisTitleMargin=p(e,k+x+(2!==m&&k&&C*d.labels[g?"y":"x"])),S[m]=ue(S[m],a.axisTitleMargin+v+C*a.offset),T[y]=ue(T[y],2*ce(d.lineWidth/2))},getLinePath:function(t){var e=this.chart,i=this.opposite,n=this.offset,r=this.horiz,s=this.left+(i?this.width:0)+n,n=e.chartHeight-this.bottom-(i?this.height:0)+n;return i&&(t*=-1),e.renderer.crispLine(["M",r?this.left:s,r?n:this.top,"L",r?e.chartWidth-this.right:s,r?n:e.chartHeight-this.bottom],t)},getTitlePosition:function(){var t=this.horiz,e=this.left,n=this.top,r=this.len,s=this.options.title,o=t?e:n,a=this.opposite,l=this.offset,h=i(s.style.fontSize||12),r={low:o+(t?0:r),middle:o+r/2,high:o+(t?r:0)}[s.align],e=(t?n+this.height:e)+(t?1:-1)*(a?-1:1)*this.axisTitleMargin+(2===this.side?h:0);return{x:t?r:e+(a?this.width:0)+l+(s.x||0),y:t?e-(a?this.height:0)+l:r+(s.y||0)}},render:function(){var t,e,i,n=this,r=n.horiz,s=n.reversed,o=n.chart,a=o.renderer,h=n.options,d=n.isLog,u=n.isLinked,p=n.tickPositions,f=n.axisTitle,g=n.stacks,m=n.ticks,y=n.minorTicks,v=n.alternateBands,x=h.stackLabels,b=h.alternateGridColor,w=n.tickmarkOffset,k=h.lineWidth,S=o.hasRendered&&c(n.oldMin)&&!isNaN(n.oldMin),T=n.hasData,C=n.showAxis,P=n.justifyLabels=!n.staggerLines&&r&&"justify"===h.labels.overflow;if(n.labelEdge.length=0,je([m,y,v],function(t){for(var e in t)t[e].isActive=!1}),(T||u)&&(n.minorTickInterval&&!n.categories&&je(n.getMinorTickPositions(),function(t){y[t]||(y[t]=new R(n,t,"minor")),S&&y[t].isNew&&y[t].render(null,!0),y[t].render(null,!1,1)}),p.length&&(t=p.slice(),(r&&s||!r&&!s)&&t.reverse(),P&&(t=t.slice(1).concat([t[0]])),je(t,function(e,i){P&&(i=i===t.length-1?0:i+1),(!u||e>=n.min&&e<=n.max)&&(m[e]||(m[e]=new R(n,e)),S&&m[e].isNew&&m[e].render(i,!0,.1),m[e].render(i,!1,1))}),w&&0===n.min&&(m[-1]||(m[-1]=new R(n,-1,null,!0)),m[-1].render(-1))),b&&je(p,function(t,r){r%2===0&&t=.5)t=he(t),o=this.getLinearTickPositions(t,e,i);else if(t>=.08)for(var h,c,d,u,f,s=ce(e),r=t>.3?[1,2,4]:t>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];i+1>s&&!f;s++)for(c=r.length,h=0;c>h&&!f;h++)d=a(l(s)*r[h]),d>e&&(!n||i>=u)&&o.push(u),u>i&&(f=!0),u=d;else e=l(e),i=l(i),t=r[n?"minorTickInterval":"tickInterval"],t=p("auto"===t?null:t,this._minorAutoInterval,(i-e)*(r.tickPixelInterval/(n?5:1))/((n?s/this.tickPositions.length:s)||1)),t=k(t,null,w(t)),o=Ue(this.getLinearTickPositions(t,e,i),a),n||(this._minorAutoInterval=t/5);return n||(this.tickInterval=t),o},z.prototype.getTimeTicks=function(e,i,n,r){var s,o=[],a={},l=X.global.useUTC,h=new Date(i-q),d=e.unitRange,u=e.count;if(c(i)){d>=j.second&&(h.setMilliseconds(0),h.setSeconds(d>=j.minute?0:u*ce(h.getSeconds()/u))),d>=j.minute&&h[ee](d>=j.hour?0:u*ce(h[U]()/u)),d>=j.hour&&h[ie](d>=j.day?0:u*ce(h[Z]()/u)),d>=j.day&&h[ne](d>=j.month?1:u*ce(h[Q]()/u)),d>=j.month&&(h[re](d>=j.year?0:u*ce(h[J]()/u)),s=h[te]()),d>=j.year&&(s-=s%u,h[se](s)),d===j.week&&h[ne](h[Q]()-h[K]()+p(r,1)),i=1,q&&(h=new Date(h.getTime()+q)),s=h[te]();for(var r=h.getTime(),f=h[J](),g=h[Q](),m=l?q:(864e5+6e4*h.getTimezoneOffset())%864e5;n>r;)o.push(r),d===j.year?r=V(s+i*u,0):d===j.month?r=V(s,f+i*u):l||d!==j.day&&d!==j.week?r+=d*u:r=V(s,f,g+i*u*(d===j.day?1:7)),i++;o.push(r),je(Ve(o,function(t){return d<=j.hour&&t%j.day===m}),function(t){a[t]="day"})}return o.info=t(e,{higherRanks:a,totalRange:d*u}),o},z.prototype.normalizeTimeTickInterval=function(t,e){var i,n=e||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],r=n[n.length-1],s=j[r[0]],o=r[1];for(i=0;it&&(o=[1,2,5]),n=k(t/s,o,"year"===r[0]?ue(w(t/s),1):1),{unitRange:s,count:n,unitName:r[0]}},B.prototype={destroy:function(){A(this,this.axis)},render:function(t){var e=this.options,i=e.format,i=i?b(i,this):e.formatter.call(this);this.label?this.label.attr({text:i,visibility:"hidden"}):this.label=this.axis.chart.renderer.text(i,0,0,e.useHTML).css(e.style).attr({align:this.textAlign,rotation:e.rotation,visibility:"hidden"}).add(t)},setOffset:function(t,e){var i=this.axis,n=i.chart,r=n.inverted,s=this.isNegative,o=i.translate(this.percent?100:this.total,0,0,0,1),i=i.translate(0),i=fe(o-i),a=n.xAxis[0].translate(this.x)+t,l=n.plotHeight,s={x:r?s?o:o-i:a,y:r?l-a-e:s?l-o-i:l-o,width:r?i:e,height:r?e:i};(r=this.label)&&(r.align(this.alignOptions,null,s),s=r.alignAttr,r.attr({visibility:this.options.crop===!1||n.isInsidePlot(s.x,s.y)?Ae?"inherit":"visible":"hidden"}))}},F.prototype={init:function(t,e){var n=e.borderWidth,r=e.style,s=i(r.padding);this.chart=t,this.options=e,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.label=t.renderer.label("",0,0,e.shape,null,null,e.useHTML,null,"tooltip").attr({padding:s,fill:e.backgroundColor,"stroke-width":n,r:e.borderRadius,zIndex:8}).css(r).css({padding:0}).add().attr({y:-999}),Me||this.label.shadow(e.shadow),this.shared=e.shared},destroy:function(){this.label&&(this.label=this.label.destroy()),clearTimeout(this.hideTimer),clearTimeout(this.tooltipTimeout)},move:function(e,i,n,r){var s=this,o=s.now,a=s.options.animation!==!1&&!s.isHidden;t(o,{x:a?(2*o.x+e)/3:e,y:a?(o.y+i)/2:i,anchorX:a?(2*o.anchorX+n)/3:n,anchorY:a?(o.anchorY+r)/2:r}),s.label.attr(o),a&&(fe(e-o.x)>1||fe(i-o.y)>1)&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){s&&s.move(e,i,n,r)},32))},hide:function(){var t,e=this;clearTimeout(this.hideTimer),this.isHidden||(t=this.chart.hoverPoints,this.hideTimer=setTimeout(function(){e.label.fadeOut(),e.isHidden=!0},p(this.options.hideDelay,500)),t&&je(t,function(t){t.setState()}),this.chart.hoverPoints=null)},getAnchor:function(t,e){var i,n,r=this.chart,s=r.inverted,o=r.plotTop,a=0,l=0,t=u(t);return i=t[0].tooltipPos,this.followPointer&&e&&(e.chartX===_&&(e=r.pointer.normalize(e)),i=[e.chartX-r.plotLeft,e.chartY-o]),i||(je(t,function(t){n=t.series.yAxis,a+=t.plotX,l+=(t.plotLow?(t.plotLow+t.plotHigh)/2:t.plotY)+(!s&&n?n.top-o:0)}),a/=t.length,l/=t.length,i=[s?r.plotWidth-l:a,this.shared&&!s&&t.length>1&&e?e.chartY-o:s?r.plotHeight-a:l]),Ue(i,he)},getPosition:function(t,e,i){var n,r=this.chart,s=r.plotLeft,o=r.plotTop,a=r.plotWidth,l=r.plotHeight,h=p(this.options.distance,12),c=i.plotX,i=i.plotY,r=c+s+(r.inverted?h:-t-h),d=i-e+o+15;return 7>r&&(r=s+ue(c,0)+h),r+t>s+a&&(r-=r+t-(s+a),d=i-e+o-h,n=!0),o+5>d&&(d=o+5,n&&i>=d&&d+e>=i&&(d=i+o+h)),d+e>o+l&&(d=ue(o,o+l-e-h)),{x:r,y:d}},defaultFormatter:function(t){var e,i=this.points||u(this),n=i[0].series;return e=[n.tooltipHeaderFormatter(i[0])],je(i,function(t){n=t.series,e.push(n.tooltipFormatter&&n.tooltipFormatter(t)||t.point.tooltipFormatter(n.tooltipOptions.pointFormat))}),e.push(t.options.footerFormat||""),e.join("")},refresh:function(t,e){var i,n,r,s=this.chart,o=this.label,a=this.options,l={},h=[];r=a.formatter||this.defaultFormatter;var c,l=s.hoverPoints,d=this.shared;clearTimeout(this.hideTimer),this.followPointer=u(t)[0].series.tooltipOptions.followPointer,n=this.getAnchor(t,e),i=n[0],n=n[1],!d||t.series&&t.series.noSharedTooltip?l=t.getLabelConfig():(s.hoverPoints=t,l&&je(l,function(t){t.setState()}),je(t,function(t){t.setState("hover"),h.push(t.getLabelConfig())}),l={x:t[0].category,y:t[0].y},l.points=h,t=t[0]),r=r.call(l,this),l=t.series,r===!1?this.hide():(this.isHidden&&(ei(o),o.attr("opacity",1).show()),o.attr({text:r}),c=a.borderColor||t.color||l.color||"#606060",o.attr({stroke:c}),this.updatePosition({plotX:i,plotY:n}),this.isHidden=!1),Qe(s,"tooltipRefresh",{text:r,x:i+s.plotLeft,y:n+s.plotTop,borderColor:c})},updatePosition:function(t){var e=this.chart,i=this.label,i=(this.options.positioner||this.getPosition).call(this,i.width,i.height,t);this.move(he(i.x),he(i.y),t.plotX+e.plotLeft,t.plotY+e.plotTop)}};var ui=Highcharts.Pointer=function(t,e){this.init(t,e)};if(ui.prototype={init:function(t,e){var i,n=e.chart,r=n.events,s=Me?"":n.zoomType,n=t.inverted;this.options=e,this.chart=t,this.zoomX=i=/x/.test(s),this.zoomY=s=/y/.test(s),this.zoomHor=i&&!n||s&&n,this.zoomVert=s&&!n||i&&n,this.runChartClick=r&&!!r.click,this.pinchDown=[],this.lastValidTouch={},e.tooltip.enabled&&(t.tooltip=new F(t,e.tooltip)),this.setDOMEvents()},normalize:function(e,i){var n,r,e=e||ae.event;return e.target||(e.target=e.srcElement),e=Je(e),r=e.touches?e.touches.item(0):e,i||(this.chartPosition=i=qe(this.chart.container)),r.pageX===_?(n=ue(e.x,e.clientX-i.left),r=e.y):(n=r.pageX-i.left,r=r.pageY-i.top),t(e,{chartX:he(n),chartY:he(r)})},getCoordinates:function(t){var e={xAxis:[],yAxis:[]};return je(this.chart.axes,function(i){e[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(t[i.horiz?"chartX":"chartY"])})}),e},getIndex:function(t){var e=this.chart;return e.inverted?e.plotHeight+e.plotTop-t.chartY:t.chartX-e.plotLeft},runPointActions:function(t){var e,i,n,r,s=this,o=s.chart,a=o.series,l=o.tooltip,h=o.hoverPoint,c=o.hoverSeries,d=o.chartWidth,u=s.getIndex(t);if(l&&s.options.tooltip.shared&&(!c||!c.noSharedTooltip)){for(i=[],n=a.length,r=0;n>r;r++)a[r].visible&&a[r].options.enableMouseTracking!==!1&&!a[r].noSharedTooltip&&a[r].tooltipPoints.length&&(e=a[r].tooltipPoints[u])&&e.series&&(e._dist=fe(u-e.clientX),d=pe(d,e._dist),i.push(e));for(n=i.length;n--;)i[n]._dist>d&&i.splice(n,1);i.length&&i[0].clientX!==s.hoverX&&(l.refresh(i,t),s.hoverX=i[0].clientX)}c&&c.tracker?(e=c.tooltipPoints[u])&&e!==h&&e.onMouseOver(t):l&&l.followPointer&&!l.isHidden&&(a=l.getAnchor([{}],t),l.updatePosition({plotX:a[0],plotY:a[1]})),l&&!s._onDocumentMouseMove&&(s._onDocumentMouseMove=function(t){s.onDocumentMouseMove(t)},Ze(oe,"mousemove",s._onDocumentMouseMove)),je(o.axes,function(i){i.drawCrosshair(t,p(h,e))})},reset:function(t){var e=this.chart,i=e.hoverSeries,n=e.hoverPoint,r=e.tooltip,s=r&&r.shared?e.hoverPoints:n;(t=t&&r&&s)&&u(s)[0].plotX===_&&(t=!1),t?(r.refresh(s),n&&n.setState(n.state,!0)):(n&&n.onMouseOut(),i&&i.onMouseOut(),r&&r.hide(),this._onDocumentMouseMove&&(Ke(oe,"mousemove",this._onDocumentMouseMove),this._onDocumentMouseMove=null),je(e.axes,function(t){t.hideCrosshair()}),this.hoverX=null)},scaleGroups:function(t,e){var i,n=this.chart;je(n.series,function(r){i=t||r.getPlotBox(),r.xAxis&&r.xAxis.zoomEnabled&&(r.group.attr(i),r.markerGroup&&(r.markerGroup.attr(i),r.markerGroup.clip(e?n.clipRect:null)),r.dataLabelsGroup&&r.dataLabelsGroup.attr(i))}),n.clipRect.attr(e||n.clipBox)},pinchTranslate:function(t,e,i,n,r,s,o,a){t&&this.pinchTranslateDirection(!0,i,n,r,s,o,a),e&&this.pinchTranslateDirection(!1,i,n,r,s,o,a)},pinchTranslateDirection:function(t,e,i,n,r,s,o,a){var l,h,c,d=this.chart,u=t?"x":"y",p=t?"X":"Y",f="chart"+p,g=t?"width":"height",m=d["plot"+(t?"Left":"Top")],y=a||1,v=d.inverted,x=d.bounds[t?"h":"v"],b=1===e.length,w=e[0][f],k=i[0][f],S=!b&&e[1][f],T=!b&&i[1][f],i=function(){!b&&fe(w-S)>20&&(y=a||fe(k-T)/fe(w-S)),h=(m-k)/y+w,l=d["plot"+(t?"Width":"Height")]/y};i(),e=h,ex.max&&(e=x.max-l,c=!0),c?(k-=.8*(k-o[u][0]),b||(T-=.8*(T-o[u][1])),i()):o[u]=[k,T],v||(s[u]=h-m,s[g]=l),s=v?1/y:y,r[g]=l,r[u]=e,n[v?t?"scaleY":"scaleX":"scale"+p]=y,n["translate"+p]=s*m+(k-s*w)},pinch:function(e){var i=this,n=i.chart,r=i.pinchDown,s=n.tooltip&&n.tooltip.options.followTouchMove,o=e.touches,a=o.length,l=i.lastValidTouch,h=i.zoomHor||i.pinchHor,c=i.zoomVert||i.pinchVert,d=h||c,u=i.selectionMarker,p={},f=1===a&&(i.inClass(e.target,"highcharts-tracker")&&n.runTrackerClick||n.runChartClick),g={};(d||s)&&!f&&e.preventDefault(),Ue(o,function(t){return i.normalize(t)}),"touchstart"===e.type?(je(o,function(t,e){r[e]={chartX:t.chartX,chartY:t.chartY}}),l.x=[r[0].chartX,r[1]&&r[1].chartX],l.y=[r[0].chartY,r[1]&&r[1].chartY],je(n.axes,function(t){if(t.zoomEnabled){var e=n.bounds[t.horiz?"h":"v"],i=t.minPixelPadding,r=t.toPixels(t.dataMin),s=t.toPixels(t.dataMax),o=pe(r,s),r=ue(r,s);e.min=pe(t.pos,o-i),e.max=ue(t.pos+t.len,r+i)}})):r.length&&(u||(i.selectionMarker=u=t({destroy:Oe},n.plotBox)),i.pinchTranslate(h,c,r,o,p,u,g,l),i.hasPinched=d,i.scaleGroups(p,g),!d&&s&&1===a&&this.runPointActions(i.normalize(e)))},dragStart:function(t){var e=this.chart;e.mouseIsDown=t.type,e.cancelClick=!1,e.mouseDownX=this.mouseDownX=t.chartX,e.mouseDownY=this.mouseDownY=t.chartY},drag:function(t){var e,i=this.chart,n=i.options.chart,r=t.chartX,s=t.chartY,o=this.zoomHor,a=this.zoomVert,l=i.plotLeft,h=i.plotTop,c=i.plotWidth,d=i.plotHeight,u=this.mouseDownX,p=this.mouseDownY;l>r?r=l:r>l+c&&(r=l+c),h>s?s=h:s>h+d&&(s=h+d),this.hasDragged=Math.sqrt(Math.pow(u-r,2)+Math.pow(p-s,2)),this.hasDragged>10&&(e=i.isInsidePlot(u-l,p-h),i.hasCartesianSeries&&(this.zoomX||this.zoomY)&&e&&!this.selectionMarker&&(this.selectionMarker=i.renderer.rect(l,h,o?1:c,a?1:d,0).attr({fill:n.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add()),this.selectionMarker&&o&&(r-=u,this.selectionMarker.attr({width:fe(r),x:(r>0?0:r)+u})),this.selectionMarker&&a&&(r=s-p,this.selectionMarker.attr({height:fe(r),y:(r>0?0:r)+p})),e&&!this.selectionMarker&&n.panning&&i.pan(t,n.panning))},drop:function(e){var i=this.chart,n=this.hasPinched;if(this.selectionMarker){var r,s={xAxis:[],yAxis:[],originalEvent:e.originalEvent||e},o=this.selectionMarker,a=o.x,l=o.y;(this.hasDragged||n)&&(je(i.axes,function(t){if(t.zoomEnabled){var e=t.horiz,i=t.toValue(e?a:l),e=t.toValue(e?a+o.width:l+o.height);!isNaN(i)&&!isNaN(e)&&(s[t.coll].push({axis:t,min:pe(i,e),max:ue(i,e)}),r=!0)}}),r&&Qe(i,"selection",s,function(e){i.zoom(t(e,n?{animation:!1}:null))})),this.selectionMarker=this.selectionMarker.destroy(),n&&this.scaleGroups()}i&&(f(i.container,{cursor:i._cursor}),i.cancelClick=this.hasDragged>10,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(t){t=this.normalize(t),t.preventDefault&&t.preventDefault(),this.dragStart(t)},onDocumentMouseUp:function(t){this.drop(t)},onDocumentMouseMove:function(t){var e=this.chart,i=this.chartPosition,n=e.hoverSeries,t=this.normalize(t,i);i&&n&&!this.inClass(t.target,"highcharts-tracker")&&!e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)&&this.reset()},onContainerMouseLeave:function(){this.reset(),this.chartPosition=null},onContainerMouseMove:function(t){var e=this.chart,t=this.normalize(t);"mousedown"===e.mouseIsDown&&this.drag(t),(this.inClass(t.target,"highcharts-tracker")||e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop))&&!e.openMenu&&this.runPointActions(t)},inClass:function(t,e){for(var i;t;){if(i=d(t,"class")){if(-1!==i.indexOf(e))return!0;if(-1!==i.indexOf("highcharts-container"))return!1}t=t.parentNode}},onTrackerMouseOut:function(t){var e=this.chart.hoverSeries,t=t.relatedTarget||t.toElement,i=t.point&&t.point.series;!e||e.options.stickyTracking||this.inClass(t,"highcharts-tooltip")||i===e||e.onMouseOut()},onContainerClick:function(e){var i,n,r,s=this.chart,o=s.hoverPoint,a=s.plotLeft,l=s.plotTop,h=s.inverted,e=this.normalize(e);e.cancelBubble=!0,s.cancelClick||(o&&this.inClass(e.target,"highcharts-tracker")?(i=this.chartPosition,n=o.plotX,r=o.plotY,t(o,{pageX:i.left+a+(h?s.plotWidth-r:n),pageY:i.top+l+(h?s.plotHeight-n:r)}),Qe(o.series,"click",t(e,{point:o})),s.hoverPoint&&o.firePointEvent("click",e)):(t(e,this.getCoordinates(e)),s.isInsidePlot(e.chartX-a,e.chartY-l)&&Qe(s,"click",e)))},onContainerTouchStart:function(t){var e=this.chart;1===t.touches.length?(t=this.normalize(t),e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)?(this.runPointActions(t),this.pinch(t)):this.reset()):2===t.touches.length&&this.pinch(t)},onContainerTouchMove:function(t){(1===t.touches.length||2===t.touches.length)&&this.pinch(t)},onDocumentTouchEnd:function(t){this.drop(t)},setDOMEvents:function(){var t,e=this,i=e.chart.container;this._events=t=[[i,"onmousedown","onContainerMouseDown"],[i,"onmousemove","onContainerMouseMove"],[i,"onclick","onContainerClick"],[i,"mouseleave","onContainerMouseLeave"],[oe,"mouseup","onDocumentMouseUp"]],Ie&&t.push([i,"ontouchstart","onContainerTouchStart"],[i,"ontouchmove","onContainerTouchMove"],[oe,"touchend","onDocumentTouchEnd"]),je(t,function(t){e["_"+t[2]]=function(i){e[t[2]](i)},0===t[1].indexOf("on")?t[0][t[1]]=e["_"+t[2]]:Ze(t[0],t[1],e["_"+t[2]])})},destroy:function(){var t=this;je(t._events,function(e){0===e[1].indexOf("on")?e[0][e[1]]=null:Ke(e[0],e[1],t["_"+e[2]])}),delete t._events,clearInterval(t.tooltipTimeout)}},Xe=Highcharts.TrackerMixin={drawTrackerPoint:function(){var t=this,e=t.chart,i=e.pointer,n=t.options.cursor,r=n&&{cursor:n},s=function(i){var n,r=i.target;for(e.hoverSeries!==t&&t.onMouseOver();r&&!n;)n=r.point,r=r.parentNode;n!==_&&n!==e.hoverPoint&&n.onMouseOver(i)};je(t.points,function(t){t.graphic&&(t.graphic.element.point=t),t.dataLabel&&(t.dataLabel.element.point=t)}),t._hasTracking||(je(t.trackerGroups,function(e){t[e]&&(t[e].addClass("highcharts-tracker").on("mouseover",s).on("mouseout",function(t){i.onTrackerMouseOut(t)}).css(r),Ie)&&t[e].on("touchstart",s)}),t._hasTracking=!0)},drawTrackerGraph:function(){var t,e=this,i=e.options,n=i.trackByArea,r=[].concat(n?e.areaPath:e.graphPath),s=r.length,o=e.chart,a=o.pointer,l=o.renderer,h=o.options.tooltip.snap,c=e.tracker,d=i.cursor,u=d&&{cursor:d},d=e.singlePoints,p=function(){o.hoverSeries!==e&&e.onMouseOver()};if(s&&!n)for(t=s+1;t--;)"M"===r[t]&&r.splice(t+1,0,r[t+1]-h,r[t+2],"L"),(t&&"M"===r[t]||t===s)&&r.splice(t,0,"L",r[t-2]+h,r[t-1]);for(t=0;te-6&&e+n-6>s?"":Be}))}))},renderTitle:function(){var t=this.padding,e=this.options.title,i=0;e.text&&(this.title||(this.title=this.chart.renderer.label(e.text,t-3,t-4,null,null,null,null,null,"legend-title").attr({zIndex:1}).css(e.style).add(this.group)),t=this.title.getBBox(),i=t.height,this.offsetWidth=t.width,this.contentGroup.attr({translateY:i})),this.titleHeight=i},renderItem:function(t){var i,n=this,r=n.chart,s=r.renderer,o=n.options,a="horizontal"===o.layout,l=n.symbolWidth,h=o.symbolPadding,c=n.itemStyle,d=n.itemHiddenStyle,u=n.padding,f=a?p(o.itemDistance,8):0,m=!o.rtl,y=o.width,v=o.itemMarginBottom||0,x=n.itemMarginTop,w=n.initialItemX,k=t.legendItem,S=t.series&&t.series.drawLegendSymbol?t.series:t,T=S.options,T=T&&T.showCheckbox,C=o.useHTML;!k&&(t.legendGroup=s.g("legend-item").attr({zIndex:1}).add(n.scrollGroup),S.drawLegendSymbol(n,t),t.legendItem=k=s.text(o.labelFormat?b(o.labelFormat,t):o.labelFormatter.call(t),m?l+h:-h,n.baseline,C).css(e(t.visible?c:d)).attr({align:m?"left":"right",zIndex:2}).add(t.legendGroup),(C?k:t.legendGroup).on("mouseover",function(){t.setState("hover"),k.css(n.options.itemHoverStyle)}).on("mouseout",function(){k.css(t.visible?c:d),t.setState()}).on("click",function(e){var i=function(){t.setVisible()},e={browserEvent:e};t.firePointEvent?t.firePointEvent("legendItemClick",e,i):Qe(t,"legendItemClick",e,i)}),n.colorizeItem(t,t.visible),T)&&(t.checkbox=g("input",{type:"checkbox",checked:t.selected,defaultChecked:t.selected},o.itemCheckboxStyle,r.container),Ze(t.checkbox,"click",function(e){Qe(t,"checkboxClick",{checked:e.target.checked},function(){t.select()})})),s=k.getBBox(),i=t.legendItemWidth=o.itemWidth||t.legendItemWidth||l+h+s.width+f+(T?20:0),o=i,n.itemHeight=l=he(t.legendItemHeight||s.height),a&&n.itemX-w+o>(y||r.chartWidth-2*u-w)&&(n.itemX=w,n.itemY+=x+n.lastLineHeight+v,n.lastLineHeight=0),n.maxItemWidth=ue(n.maxItemWidth,o),n.lastItemY=x+n.itemY+v,n.lastLineHeight=ue(l,n.lastLineHeight),t._legendItemPos=[n.itemX,n.itemY],a?n.itemX+=o:(n.itemY+=x+l+v,n.lastLineHeight=l),n.offsetWidth=y||ue((a?n.itemX-w-f:o)+u,n.offsetWidth)},getAllItems:function(){var t=[];return je(this.chart.series,function(e){var i=e.options;p(i.showInLegend,c(i.linkedTo)?!1:_,!0)&&(t=t.concat(e.legendItems||("point"===i.legendType?e.data:e)))}),t},render:function(){var e,i,n,r,s=this,o=s.chart,a=o.renderer,l=s.group,h=s.box,c=s.options,d=s.padding,u=c.borderWidth,p=c.backgroundColor;s.itemX=s.initialItemX,s.itemY=s.initialItemY,s.offsetWidth=0,s.lastItemY=0,l||(s.group=l=a.g("legend").attr({zIndex:7}).add(),s.contentGroup=a.g().attr({zIndex:1}).add(l),s.scrollGroup=a.g().add(s.contentGroup)),s.renderTitle(),e=s.getAllItems(),T(e,function(t,e){return(t.options&&t.options.legendIndex||0)-(e.options&&e.options.legendIndex||0)}),c.reversed&&e.reverse(),s.allItems=e,s.display=i=!!e.length,je(e,function(t){s.renderItem(t)}),n=c.width||s.offsetWidth,r=s.lastItemY+s.lastLineHeight+s.titleHeight,r=s.handleOverflow(r),(u||p)&&(n+=d,r+=d,h?n>0&&r>0&&(h[h.isNew?"attr":"animate"](h.crisp(null,null,null,n,r)),h.isNew=!1):(s.box=h=a.rect(0,0,n,r,c.borderRadius,u||0).attr({stroke:c.borderColor,"stroke-width":u||0,fill:p||Be}).add(l).shadow(c.shadow),h.isNew=!0),h[i?"show":"hide"]()),s.legendWidth=n,s.legendHeight=r,je(e,function(t){s.positionItem(t)}),i&&l.align(t({width:n,height:r},c),!0,"spacingBox"),o.isResizing||this.positionCheckboxes()},handleOverflow:function(t){var e,i,n=this,r=this.chart,s=r.renderer,o=this.options,a=o.y,a=r.spacingBox.height+("top"===o.verticalAlign?-a:a)-this.padding,l=o.maxHeight,h=this.clipRect,c=o.navigation,d=p(c.animation,!0),u=c.arrowSize||12,f=this.nav,g=this.pages,m=this.allItems; +return"horizontal"===o.layout&&(a/=2),l&&(a=pe(a,l)),g.length=0,t>a&&!o.useHTML?(this.clipHeight=e=a-20-this.titleHeight-this.padding,this.currentPage=p(this.currentPage,1),this.fullHeight=t,je(m,function(t,n){var r=t._legendItemPos[1],s=he(t.legendItem.bBox.height),o=g.length;(!o||r-g[o-1]>e)&&g.push(i||r),n===m.length-1&&r+s-g[o-1]>e&&g.push(r),r!==i&&(i=r)}),h||(h=n.clipRect=s.clipRect(0,this.padding,9999,0),n.contentGroup.clip(h)),h.attr({height:e}),f||(this.nav=f=s.g().attr({zIndex:1}).add(this.group),this.up=s.symbol("triangle",0,0,u,u).on("click",function(){n.scroll(-1,d)}).add(f),this.pager=s.text("",15,10).css(c.style).add(f),this.down=s.symbol("triangle-down",0,0,u,u).on("click",function(){n.scroll(1,d)}).add(f)),n.scroll(0),t=a):f&&(h.attr({height:r.chartHeight}),f.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),t},scroll:function(t,e){var i=this.pages,n=i.length,r=this.currentPage+t,s=this.clipHeight,o=this.options.navigation,a=o.activeColor,o=o.inactiveColor,l=this.pager,h=this.padding;r>n&&(r=n),r>0&&(e!==_&&D(e,this.chart),this.nav.attr({translateX:h,translateY:s+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({fill:1===r?o:a}).css({cursor:1===r?"default":"pointer"}),l.attr({text:r+"/"+n}),this.down.attr({x:18+this.pager.getBBox().width,fill:r===n?o:a}).css({cursor:r===n?"default":"pointer"}),i=-i[r-1]+this.initialItemY,this.scrollGroup.animate({translateY:i}),this.currentPage=r,this.positionCheckboxes(i))}},li=Highcharts.LegendSymbolMixin={drawRectangle:function(t,e){var i=t.options.symbolHeight||12;e.legendSymbol=this.chart.renderer.rect(0,t.baseline-5-i/2,t.symbolWidth,i,p(t.options.symbolRadius,2)).attr({zIndex:3}).add(e.legendGroup)},drawLineMarker:function(t){var e,i=this.options,n=i.marker;e=t.symbolWidth;var r,s=this.chart.renderer,o=this.legendGroup,t=t.baseline-he(.3*s.fontMetrics(t.options.itemStyle.fontSize).b);i.lineWidth&&(r={"stroke-width":i.lineWidth},i.dashStyle&&(r.dashstyle=i.dashStyle),this.legendLine=s.path(["M",0,t,"L",e,t]).attr(r).add(o)),n&&n.enabled&&(i=n.radius,this.legendSymbol=e=s.symbol(this.symbol,e/2-i,t-i,2*i,2*i).add(o),e.isMarker=!0)}},/Trident\/7\.0/.test(xe)&&x(fi.prototype,"positionItem",function(t,e){var i=this,n=function(){e._legendItemPos&&t.call(i,e)};i.chart.renderer.forExport?n():setTimeout(n)}),N.prototype={init:function(t,i){var n,r=t.series;t.series=null,n=e(X,t),n.series=t.series=r,this.userOptions=t,r=n.chart,this.margin=this.splashArray("margin",r),this.spacing=this.splashArray("spacing",r);var s=r.events;this.bounds={h:{},v:{}},this.callback=i,this.isResizing=0,this.options=n,this.axes=[],this.series=[],this.hasCartesianSeries=r.showAxes;var o,a=this;if(a.index=Re.length,Re.push(a),r.reflow!==!1&&Ze(a,"load",function(){a.initReflow()}),s)for(o in s)Ze(a,o,s[o]);a.xAxis=[],a.yAxis=[],a.animation=Me?!1:p(r.animation,!0),a.pointCount=0,a.counters=new S,a.firstRender()},initSeries:function(t){var e=this.options.chart;return(e=He[t.type||e.type||e.defaultSeriesType])||M(17,!0),e=new e,e.init(this,t),e},isInsidePlot:function(t,e,i){var n=i?e:t,t=i?t:e;return n>=0&&n<=this.plotWidth&&t>=0&&t<=this.plotHeight},adjustTickAmounts:function(){this.options.chart.alignTicks!==!1&&je(this.axes,function(t){t.adjustTickAmount()}),this.maxTicks=null},redraw:function(e){var i,n,r=this.axes,s=this.series,o=this.pointer,a=this.legend,l=this.isDirtyLegend,h=this.isDirtyBox,c=s.length,d=c,u=this.renderer,p=u.isHidden(),f=[];for(D(e,this),p&&this.cloneRenderTo(),this.layOutTitles();d--;)if(e=s[d],e.options.stacking&&(i=!0,e.isDirty)){n=!0;break}if(n)for(d=c;d--;)e=s[d],e.options.stacking&&(e.isDirty=!0);je(s,function(t){t.isDirty&&"point"===t.options.legendType&&(l=!0)}),l&&a.options.enabled&&(a.render(),this.isDirtyLegend=!1),i&&this.getStacks(),this.hasCartesianSeries&&(this.isResizing||(this.maxTicks=null,je(r,function(t){t.setScale()})),this.adjustTickAmounts(),this.getMargins(),je(r,function(t){t.isDirty&&(h=!0)}),je(r,function(e){e.isDirtyExtremes&&(e.isDirtyExtremes=!1,f.push(function(){Qe(e,"afterSetExtremes",t(e.eventArgs,e.getExtremes())),delete e.eventArgs})),(h||i)&&e.redraw()})),h&&this.drawChartBox(),je(s,function(t){t.isDirty&&t.visible&&(!t.isCartesian||t.xAxis)&&t.redraw()}),o&&o.reset&&o.reset(!0),u.draw(),Qe(this,"redraw"),p&&this.cloneRenderTo(!0),je(f,function(t){t.call()})},get:function(t){var e,i,n=this.axes,r=this.series;for(e=0;epe(l.dataMin,l.min)&&o=18&&25>=e&&(e=15)),n&&(n.css({width:(r.width||o)+"px"}).align(t({y:e+s.margin},r),!1,"spacingBox"),!r.floating&&!r.verticalAlign&&(e=de(e+n.getBBox().height))),this.titleOffset=e},getChartSize:function(){var t=this.options.chart,e=this.renderToClone||this.renderTo;this.containerWidth=Ge(e,"width"),this.containerHeight=Ge(e,"height"),this.chartWidth=ue(0,t.width||this.containerWidth||600),this.chartHeight=ue(0,p(t.height,this.containerHeight>19?this.containerHeight:400))},cloneRenderTo:function(t){var e=this.renderToClone,i=this.container;t?e&&(this.renderTo.appendChild(i),L(e),delete this.renderToClone):(i&&i.parentNode===this.renderTo&&this.renderTo.removeChild(i),this.renderToClone=e=this.renderTo.cloneNode(0),f(e,{position:"absolute",top:"-9999px",display:"block"}),oe.body.appendChild(e),i&&e.appendChild(i))},getContainer:function(){var e,r,s,o,a=this.options.chart;this.renderTo=e=a.renderTo,o="highcharts-"+Ee++,n(e)&&(this.renderTo=e=oe.getElementById(e)),e||M(13,!0),r=i(d(e,"data-highcharts-chart")),!isNaN(r)&&Re[r]&&Re[r].destroy(),d(e,"data-highcharts-chart",this.index),e.innerHTML="",e.offsetWidth||this.cloneRenderTo(),this.getChartSize(),r=this.chartWidth,s=this.chartHeight,this.container=e=g(ze,{className:"highcharts-container"+(a.className?" "+a.className:""),id:o},t({position:"relative",overflow:"hidden",width:r+"px",height:s+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},a.style),this.renderToClone||e),this._cursor=e.style.cursor,this.renderer=a.forExport?new ai(e,r,s,!0):new H(e,r,s),Me&&this.renderer.create(this,e,r,s)},getMargins:function(){var t,e=this.spacing,i=this.legend,n=this.margin,r=this.options.legend,s=p(r.margin,10),o=r.x,a=r.y,l=r.align,h=r.verticalAlign,d=this.titleOffset;this.resetMargins(),t=this.axisOffset,d&&!c(n[0])&&(this.plotTop=ue(this.plotTop,d+this.options.title.margin+e[0])),i.display&&!r.floating&&("right"===l?c(n[1])||(this.marginRight=ue(this.marginRight,i.legendWidth-o+s+e[1])):"left"===l?c(n[3])||(this.plotLeft=ue(this.plotLeft,i.legendWidth+o+s+e[3])):"top"===h?c(n[0])||(this.plotTop=ue(this.plotTop,i.legendHeight+a+s+e[0])):"bottom"!==h||c(n[2])||(this.marginBottom=ue(this.marginBottom,i.legendHeight-a+s+e[2]))),this.extraBottomMargin&&(this.marginBottom+=this.extraBottomMargin),this.extraTopMargin&&(this.plotTop+=this.extraTopMargin),this.hasCartesianSeries&&je(this.axes,function(t){t.getOffset()}),c(n[3])||(this.plotLeft+=t[3]),c(n[0])||(this.plotTop+=t[0]),c(n[2])||(this.marginBottom+=t[2]),c(n[1])||(this.marginRight+=t[1]),this.setChartSize()},reflow:function(t){var e=this,i=e.options.chart,n=e.renderTo,r=i.width||Ge(n,"width"),s=i.height||Ge(n,"height"),i=t?t.target:ae,n=function(){e.container&&(e.setSize(r,s,!1),e.hasUserSize=null)};e.hasUserSize||!r||!s||i!==ae&&i!==oe||((r!==e.containerWidth||s!==e.containerHeight)&&(clearTimeout(e.reflowTimeout),t?e.reflowTimeout=setTimeout(n,100):n()),e.containerWidth=r,e.containerHeight=s)},initReflow:function(){var t=this,e=function(e){t.reflow(e)};Ze(ae,"resize",e),Ze(t,"destroy",function(){Ke(ae,"resize",e)})},setSize:function(t,e,i){var n,r,s,o=this;o.isResizing+=1,s=function(){o&&Qe(o,"endResize",null,function(){o.isResizing-=1})},D(i,o),o.oldChartHeight=o.chartHeight,o.oldChartWidth=o.chartWidth,c(t)&&(o.chartWidth=n=ue(0,he(t)),o.hasUserSize=!!n),c(e)&&(o.chartHeight=r=ue(0,he(e))),($?ti:f)(o.container,{width:n+"px",height:r+"px"},$),o.setChartSize(!0),o.renderer.setSize(n,r,i),o.maxTicks=null,je(o.axes,function(t){t.isDirty=!0,t.setScale()}),je(o.series,function(t){t.isDirty=!0}),o.isDirtyLegend=!0,o.isDirtyBox=!0,o.getMargins(),o.redraw(i),o.oldChartHeight=null,Qe(o,"resize"),$===!1?s():setTimeout(s,$&&$.duration||500)},setChartSize:function(t){var e,i,n,r,s=this.inverted,o=this.renderer,a=this.chartWidth,l=this.chartHeight,h=this.options.chart,c=this.spacing,d=this.clipOffset;this.plotLeft=e=he(this.plotLeft),this.plotTop=i=he(this.plotTop),this.plotWidth=n=ue(0,he(a-e-this.marginRight)),this.plotHeight=r=ue(0,he(l-i-this.marginBottom)),this.plotSizeX=s?r:n,this.plotSizeY=s?n:r,this.plotBorderWidth=h.plotBorderWidth||0,this.spacingBox=o.spacingBox={x:c[3],y:c[0],width:a-c[3]-c[1],height:l-c[0]-c[2]},this.plotBox=o.plotBox={x:e,y:i,width:n,height:r},a=2*ce(this.plotBorderWidth/2),s=de(ue(a,d[3])/2),o=de(ue(a,d[0])/2),this.clipBox={x:s,y:o,width:ce(this.plotSizeX-ue(a,d[1])/2-s),height:ce(this.plotSizeY-ue(a,d[2])/2-o)},t||je(this.axes,function(t){t.setAxisSize(),t.setAxisTranslation()})},resetMargins:function(){var t=this.spacing,e=this.margin;this.plotTop=p(e[0],t[0]),this.marginRight=p(e[1],t[1]),this.marginBottom=p(e[2],t[2]),this.plotLeft=p(e[3],t[3]),this.axisOffset=[0,0,0,0],this.clipOffset=[0,0,0,0]},drawChartBox:function(){var t,e=this.options.chart,i=this.renderer,n=this.chartWidth,r=this.chartHeight,s=this.chartBackground,o=this.plotBackground,a=this.plotBorder,l=this.plotBGImage,h=e.borderWidth||0,c=e.backgroundColor,d=e.plotBackgroundColor,u=e.plotBackgroundImage,p=e.plotBorderWidth||0,f=this.plotLeft,g=this.plotTop,m=this.plotWidth,y=this.plotHeight,v=this.plotBox,x=this.clipRect,b=this.clipBox;t=h+(e.shadow?8:0),(h||c)&&(s?s.animate(s.crisp(null,null,null,n-t,r-t)):(s={fill:c||Be},h&&(s.stroke=e.borderColor,s["stroke-width"]=h),this.chartBackground=i.rect(t/2,t/2,n-t,r-t,e.borderRadius,h).attr(s).add().shadow(e.shadow))),d&&(o?o.animate(v):this.plotBackground=i.rect(f,g,m,y,0).attr({fill:d}).add().shadow(e.plotShadow)),u&&(l?l.animate(v):this.plotBGImage=i.image(u,f,g,m,y).add()),x?x.animate({width:b.width,height:b.height}):this.clipRect=i.clipRect(b),p&&(a?a.animate(a.crisp(null,f,g,m,y)):this.plotBorder=i.rect(f,g,m,y,0,-p).attr({stroke:e.plotBorderColor,"stroke-width":p,zIndex:1}).add()),this.isDirtyBox=!1},propFromSeries:function(){var t,e,i,n=this,r=n.options.chart,s=n.options.series;je(["inverted","angular","polar"],function(o){for(t=He[r.type||r.defaultSeriesType],i=n[o]||r[o]||t&&t.prototype[o],e=s&&s.length;!i&&e--;)(t=He[s[e].type])&&t.prototype[o]&&(i=!0);n[o]=i})},linkSeries:function(){var t=this,e=t.series;je(e,function(t){t.linkedSeries.length=0}),je(e,function(e){var i=e.options.linkedTo;n(i)&&(i=":previous"===i?t.series[e.index-1]:t.get(i))&&(i.linkedSeries.push(e),e.linkedParent=i)})},render:function(){var e,n=this,r=n.axes,s=n.renderer,o=n.options,a=o.labels,l=o.credits;n.setTitle(),n.legend=new fi(n,o.legend),n.getStacks(),je(r,function(t){t.setScale()}),n.getMargins(),n.maxTicks=null,je(r,function(t){t.setTickPositions(!0),t.setMaxTicks()}),n.adjustTickAmounts(),n.getMargins(),n.drawChartBox(),n.hasCartesianSeries&&je(r,function(t){t.render()}),n.seriesGroup||(n.seriesGroup=s.g("series-group").attr({zIndex:3}).add()),je(n.series,function(t){t.translate(),t.setTooltipPoints(),t.render()}),a.items&&je(a.items,function(e){var r=t(a.style,e.style),o=i(r.left)+n.plotLeft,l=i(r.top)+n.plotTop+12;delete r.left,delete r.top,s.text(e.html,o,l).attr({zIndex:2}).css(r).add()}),l.enabled&&!n.credits&&(e=l.href,n.credits=s.text(l.text,0,0).on("click",function(){e&&(location.href=e)}).attr({align:l.position.align,zIndex:8}).css(l.style).add().align(l.position)),n.hasRendered=!0},destroy:function(){var t,e=this,i=e.axes,n=e.series,r=e.container,s=r&&r.parentNode;for(Qe(e,"destroy"),Re[e.index]=_,e.renderTo.removeAttribute("data-highcharts-chart"),Ke(e),t=i.length;t--;)i[t]=i[t].destroy();for(t=n.length;t--;)n[t]=n[t].destroy();je("title,subtitle,chartBackground,plotBackground,plotBGImage,plotBorder,seriesGroup,clipRect,credits,pointer,scroller,rangeSelector,legend,resetZoomButton,tooltip,renderer".split(","),function(t){var i=e[t];i&&i.destroy&&(e[t]=i.destroy())}),r&&(r.innerHTML="",Ke(r),s&&L(r));for(t in e)delete e[t]},isReadyToRender:function(){var t=this;return!Ae&&ae==ae.top&&"complete"!==oe.readyState||Me&&!ae.canvg?(Me?ci.push(function(){t.firstRender()},t.options.global.canvasToolsURL):oe.attachEvent("onreadystatechange",function(){oe.detachEvent("onreadystatechange",t.firstRender),"complete"===oe.readyState&&t.firstRender()}),!1):!0},firstRender:function(){var t=this,e=t.options,i=t.callback;t.isReadyToRender()&&(t.getContainer(),Qe(t,"init"),t.resetMargins(),t.setChartSize(),t.propFromSeries(),t.getAxes(),je(e.series||[],function(e){t.initSeries(e)}),t.linkSeries(),Qe(t,"beforeRender"),t.pointer=new ui(t,e),t.render(),t.renderer.draw(),i&&i.apply(t,[t]),je(t.callbacks,function(e){e.apply(t,[t])}),t.cloneRenderTo(!0),Qe(t,"load"))},splashArray:function(t,e){var i=e[t],i=r(i)?i:[i,i,i,i];return[p(e[t+"Top"],i[0]),p(e[t+"Right"],i[1]),p(e[t+"Bottom"],i[2]),p(e[t+"Left"],i[3])]}},N.prototype.callbacks=[];var hi=Highcharts.CenteredSeriesMixin={getCenter:function(){var t,e,n=this.options,r=this.chart,s=2*(n.slicedOffset||0),o=r.plotWidth-2*s,a=r.plotHeight-2*s,r=n.center,n=[p(r[0],"50%"),p(r[1],"50%"),n.size||"100%",n.innerSize||0],l=pe(o,a);return Ue(n,function(n,r){return e=/%$/.test(n),t=2>r||2===r&&e,(e?[o,a,l,l][r]*i(n)/100:n)+(t?s:0)})}},gi=function(){};gi.prototype={init:function(t,e,i){return this.series=t,this.applyOptions(e,i),this.pointAttr={},t.options.colorByPoint&&(e=t.options.colors||t.chart.options.colors,this.color=this.color||e[t.colorCounter++],t.colorCounter===e.length)&&(t.colorCounter=0),t.chart.pointCount++,this},applyOptions:function(e,i){var n=this.series,r=n.pointValKey,e=gi.prototype.optionsToObject.call(this,e);return t(this,e),this.options=this.options?t(this.options,e):e,r&&(this.y=this[r]),this.x===_&&n&&(this.x=i===_?n.autoIncrement():i),this},optionsToObject:function(t){var e={},i=this.series,n=i.pointArrayMap||["y"],r=n.length,o=0,a=0;if("number"==typeof t||null===t)e[n[0]]=t;else if(s(t))for(t.length>r&&(i=typeof t[0],"string"===i?e.name=t[0]:"number"===i&&(e.x=t[0]),o++);r>a;)e[n[a++]]=t[o++];else"object"==typeof t&&(e=t,t.dataLabels&&(i._hasPointLabels=!0),t.marker&&(i._hasPointMarkers=!0));return e},destroy:function(){var t,e=this.series.chart,i=e.hoverPoints;e.pointCount--,i&&(this.setState(),h(i,this),!i.length)&&(e.hoverPoints=null),this===e.hoverPoint&&this.onMouseOut(),(this.graphic||this.dataLabel)&&(Ke(this),this.destroyElements()),this.legendItem&&e.legend.destroyItem(this);for(t in this)this[t]=null},destroyElements:function(){for(var t,e="graphic,dataLabel,dataLabelUpper,group,connector,shadowGroup".split(","),i=6;i--;)t=e[i],this[t]&&(this[t]=this[t].destroy())},getLabelConfig:function(){return{x:this.category,y:this.y,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},select:function(t,e){var i=this,n=i.series,r=n.chart,t=p(t,!i.selected);i.firePointEvent(t?"select":"unselect",{accumulate:e},function(){i.selected=i.options.selected=t,n.options.data[Ye(i,n.data)]=i.options,i.setState(t&&"select"),e||je(r.getSelectedPoints(),function(t){t.selected&&t!==i&&(t.selected=t.options.selected=!1,n.options.data[Ye(t,n.data)]=t.options,t.setState(""),t.firePointEvent("unselect"))})})},onMouseOver:function(t){var e=this.series,i=e.chart,n=i.tooltip,r=i.hoverPoint;r&&r!==this&&r.onMouseOut(),this.firePointEvent("mouseOver"),n&&(!n.shared||e.noSharedTooltip)&&n.refresh(this,t),this.setState("hover"),i.hoverPoint=this},onMouseOut:function(){var t=this.series.chart,e=t.hoverPoints;e&&-1!==Ye(this,e)||(this.firePointEvent("mouseOut"),this.setState(),t.hoverPoint=null)},tooltipFormatter:function(t){var e=this.series,i=e.tooltipOptions,n=p(i.valueDecimals,""),r=i.valuePrefix||"",s=i.valueSuffix||"";return je(e.pointArrayMap||["y"],function(e){e="{point."+e,(r||s)&&(t=t.replace(e+"}",r+e+"}"+s)),t=t.replace(e+"}",e+":,."+n+"f}")}),b(t,{point:this,series:this.series})},firePointEvent:function(t,e,i){var n=this,r=this.series.options;(r.point.events[t]||n.options&&n.options.events&&n.options.events[t])&&this.importEvents(),"click"===t&&r.allowPointSelect&&(i=function(t){n.select(null,t.ctrlKey||t.metaKey||t.shiftKey)}),Qe(this,t,e,i)},importEvents:function(){if(!this.hasImportedEvents){var t,i=e(this.series.options.point,this.options).events;this.events=i;for(t in i)Ze(this,t,i[t]);this.hasImportedEvents=!0}},setState:function(t,i){var n=this.plotX,r=this.plotY,s=this.series,o=s.options.states,a=ii[s.type].marker&&s.options.marker,l=a&&!a.enabled,h=a&&a.states[t],c=h&&h.enabled===!1,d=s.stateMarkerGraphic,u=this.marker||{},p=s.chart,f=this.pointAttr,t=t||"",i=i&&d;t===this.state&&!i||this.selected&&"select"!==t||o[t]&&o[t].enabled===!1||t&&(c||l&&!h.enabled)||t&&u.states&&u.states[t]&&u.states[t].enabled===!1||(this.graphic?(o=a&&this.graphic.symbolName&&f[t].r,this.graphic.attr(e(f[t],o?{x:n-o,y:r-o,width:2*o,height:2*o}:{}))):(t&&h&&(o=h.radius,u=u.symbol||s.symbol,d&&d.currentSymbol!==u&&(d=d.destroy()),d?d[i?"animate":"attr"]({x:n-o,y:r-o}):(s.stateMarkerGraphic=d=p.renderer.symbol(u,n-o,r-o,2*o,2*o).attr(f[t]).add(s.markerGroup),d.currentSymbol=u)),d&&d[t&&p.isInsidePlot(n,r,p.inverted)?"show":"hide"]()),this.state=t)}};var mi=function(){};mi.prototype={isCartesian:!0,type:"line",pointClass:gi,sorted:!0,requireSorting:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor",r:"radius"},axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],init:function(e,i){var n,r,s=this,o=e.series,a=function(t,e){return p(t.options.index,t._i)-p(e.options.index,e._i)};s.chart=e,s.options=i=s.setOptions(i),s.linkedSeries=[],s.bindAxes(),t(s,{name:i.name,state:"",pointAttr:{},visible:i.visible!==!1,selected:i.selected===!0}),Me&&(i.animation=!1),r=i.events;for(n in r)Ze(s,n,r[n]);(r&&r.click||i.point&&i.point.events&&i.point.events.click||i.allowPointSelect)&&(e.runTrackerClick=!0),s.getColor(),s.getSymbol(),je(s.parallelArrays,function(t){s[t+"Data"]=[]}),s.setData(i.data,!1),s.isCartesian&&(e.hasCartesianSeries=!0),o.push(s),s._i=o.length-1,T(o,a),this.yAxis&&T(this.yAxis.series,a),je(o,function(t,e){t.index=e,t.name=t.name||"Series "+(e+1)})},bindAxes:function(){var t,e=this,i=e.options,n=e.chart;je(e.axisTypes||[],function(r){je(n[r],function(n){t=n.options,(i[r]===t.index||i[r]!==_&&i[r]===t.id||i[r]===_&&0===t.index)&&(n.series.push(e),e[r]=n,n.isDirty=!0)}),!e[r]&&e.optionalAxis!==r&&M(18,!0)})},updateParallelArrays:function(t,e){var i=t.series,n=arguments;je(i.parallelArrays,"number"==typeof e?function(n){var r="y"===n&&i.toYData?i.toYData(t):t[n];i[n+"Data"][e]=r}:function(t){Array.prototype[e].apply(i[t+"Data"],Array.prototype.slice.call(n,2))})},autoIncrement:function(){var t=this.options,e=this.xIncrement,e=p(e,t.pointStart,0);return this.pointInterval=p(this.pointInterval,t.pointInterval,1),this.xIncrement=e+this.pointInterval,e},getSegments:function(){var t,e=-1,i=[],n=this.points,r=n.length;if(r)if(this.options.connectNulls){for(t=r;t--;)null===n[t].y&&n.splice(t,1);n.length&&(i=[n])}else je(n,function(t,s){null===t.y?(s>e+1&&i.push(n.slice(e+1,s)),e=s):s===r-1&&i.push(n.slice(e+1,s+1))});this.segments=i},setOptions:function(t){var i=this.chart,n=i.options.plotOptions,i=i.userOptions||{},r=i.plotOptions||{},s=n[this.type];return this.userOptions=t,n=e(s,n.series,t),this.tooltipOptions=e(X.tooltip,X.plotOptions[this.type].tooltip,i.tooltip,r.series&&r.series.tooltip,r[this.type]&&r[this.type].tooltip,t.tooltip),null===s.marker&&delete n.marker,n},getColor:function(){var t,e=this.options,i=this.userOptions,n=this.chart.options.colors,r=this.chart.counters;t=e.color||ii[this.type].color,t||e.colorByPoint||(c(i._colorIndex)?e=i._colorIndex:(i._colorIndex=r.color,e=r.color++),t=n[e]),this.color=t,r.wrapColor(n.length)},getSymbol:function(){var t=this.userOptions,e=this.options.marker,i=this.chart,n=i.options.symbols,i=i.counters;this.symbol=e.symbol,this.symbol||(c(t._symbolIndex)?t=t._symbolIndex:(t._symbolIndex=i.symbol,t=i.symbol++),this.symbol=n[t]),/^url/.test(this.symbol)&&(e.radius=0),i.wrapSymbol(n.length)},drawLegendSymbol:li.drawLineMarker,setData:function(t,e){var i,r=this,a=r.points,l=r.options,h=r.chart,c=null,d=r.xAxis,u=d&&!!d.categories;r.xIncrement=null,r.pointRange=u?1:l.pointRange,r.colorCounter=0;var t=t||[],f=t.length;i=l.turboThreshold;var g=this.xData,m=this.yData,y=r.pointArrayMap,y=y&&y.length;if(je(this.parallelArrays,function(t){r[t+"Data"].length=0}),i&&f>i){for(i=0;null===c&&f>i;)c=t[i],i++;if(o(c)){for(u=p(l.pointStart,0),l=p(l.pointInterval,1),i=0;f>i;i++)g[i]=u,m[i]=t[i],u+=l;r.xIncrement=u}else if(s(c))if(y)for(i=0;f>i;i++)l=t[i],g[i]=l[0],m[i]=l.slice(1,y+1);else for(i=0;f>i;i++)l=t[i],g[i]=l[0],m[i]=l[1];else M(12)}else for(i=0;f>i;i++)t[i]!==_&&(l={series:r},r.pointClass.prototype.applyOptions.apply(l,[t[i]]),r.updateParallelArrays(l,i),u&&l.name)&&(d.names[l.x]=l.name);for(n(m[0])&&M(14,!0),r.data=[],r.options.data=t,i=a&&a.length||0;i--;)a[i]&&a[i].destroy&&a[i].destroy();d&&(d.minRange=d.userMinRange),r.isDirty=r.isDirtyData=h.isDirtyBox=!0,p(e,!0)&&h.redraw(!1)},processData:function(t){var e,i=this.xData,n=this.yData,r=i.length;e=0;var s,o,a=this.xAxis,l=this.options,h=l.cropThreshold,c=this.isCartesian;if(c&&!this.isDirty&&!a.isDirty&&!this.yAxis.isDirty&&!t)return!1;for(c&&this.sorted&&(!h||r>h||this.forceCrop)&&(t=a.min,a=a.max,i[r-1]a?(i=[],n=[]):(i[0]a)&&(e=this.cropData(this.xData,this.yData,t,a),i=e.xData,n=e.yData,e=e.start,s=!0)),a=i.length-1;a>=0;a--)r=i[a]-i[a-1],r>0&&(o===_||o>r)?o=r:0>r&&this.requireSorting&&M(15);this.cropped=s,this.cropStart=e,this.processedXData=i,this.processedYData=n,null===l.pointRange&&(this.pointRange=o||1),this.closestPointRange=o},cropData:function(t,e,i,n){var r,s=t.length,o=0,a=s,l=p(this.cropShoulder,1);for(r=0;s>r;r++)if(t[r]>=i){o=ue(0,r-l);break}for(;s>r;r++)if(t[r]>n){a=r+l;break}return{xData:t.slice(o,a),yData:e.slice(o,a),start:o,end:a}},generatePoints:function(){var t,e,i,n,r=this.options.data,s=this.data,o=this.processedXData,a=this.processedYData,l=this.pointClass,h=o.length,c=this.cropStart||0,d=this.hasGroupedData,p=[];for(s||d||(s=[],s.length=r.length,s=this.data=s),n=0;h>n;n++)e=c+n,d?p[n]=(new l).init(this,[o[n]].concat(u(a[n]))):(s[e]?i=s[e]:r[e]!==_&&(s[e]=i=(new l).init(this,r[e],o[n])),p[n]=i);if(s&&(h!==(t=s.length)||d))for(n=0;t>n;n++)n===c&&!d&&(n+=h),s[n]&&(s[n].destroyElements(),s[n].plotX=_);this.data=s,this.points=p},setStackedPoints:function(){if(this.options.stacking&&(this.visible===!0||this.chart.options.chart.ignoreHiddenSeries===!1)){var t,e,i,n,r,s=this.processedXData,o=this.processedYData,a=[],l=o.length,h=this.options,c=h.threshold,d=h.stack,h=h.stacking,u=this.stackKey,p="-"+u,f=this.negStacks,g=this.yAxis,m=g.stacks,y=g.oldStacks;for(i=0;l>i;i++)n=s[i],r=o[i],e=(t=f&&c>r)?p:u,m[e]||(m[e]={}),m[e][n]||(y[e]&&y[e][n]?(m[e][n]=y[e][n],m[e][n].total=null):m[e][n]=new B(g,g.options.stackLabels,t,n,d,h)),e=m[e][n],e.points[this.index]=[e.cum||0],"percent"===h?(t=t?u:p,f&&m[t]&&m[t][n]?(t=m[t][n],e.total=t.total=ue(t.total,e.total)+fe(r)||0):e.total+=fe(r)||0):e.total+=r||0,e.cum=(e.cum||0)+(r||0),e.points[this.index].push(e.cum),a[i]=e.cum;"percent"===h&&(g.usePercentage=!0),this.stackedYData=a,g.oldStacks={}}},setPercentStacks:function(){var t=this,e=t.stackKey,i=t.yAxis.stacks;je([e,"-"+e],function(e){for(var n,r,s,o=t.xData.length;o--;)r=t.xData[o],n=(s=i[e]&&i[e][r])&&s.points[t.index],(r=n)&&(s=s.total?100/s.total:0,r[0]=I(r[0]*s),r[1]=I(r[1]*s),t.stackedYData[o]=r[1])})},getExtremes:function(t){var e,i=this.yAxis,n=this.processedXData,r=[],s=0;e=this.xAxis.getExtremes();var o,a,l,h,c=e.min,d=e.max,t=t||this.stackedYData||this.processedYData;for(e=t.length,h=0;e>h;h++)if(a=n[h],l=t[h],o=null!==l&&l!==_&&(!i.isLog||l.length||l>0),a=this.getExtremesFromAll||this.cropped||(n[h+1]||a)>=c&&(n[h-1]||a)<=d,o&&a)if(o=l.length)for(;o--;)null!==l[o]&&(r[s++]=l[o]);else r[s++]=l;this.dataMin=p(void 0,C(r)),this.dataMax=p(void 0,P(r))},translate:function(){this.processedXData||this.processData(),this.generatePoints();for(var t=this.options,e=t.stacking,i=this.xAxis,n=i.categories,r=this.yAxis,s=this.points,a=s.length,l=!!this.modifyValue,h=t.pointPlacement,d="between"===h||o(h),u=t.threshold,t=0;a>t;t++){var f=s[t],g=f.x,m=f.y,y=f.low,v=e&&r.stacks[(this.negStacks&&u>m?"-":"")+this.stackKey];r.isLog&&0>=m&&(f.y=m=null),f.plotX=i.translate(g,0,0,0,1,h,"flags"===this.type),e&&this.visible&&v&&v[g]&&(v=v[g],m=v.points[this.index],y=m[0],m=m[1],0===y&&(y=p(u,r.min)),r.isLog&&0>=y&&(y=null),f.total=f.stackTotal=v.total,f.percentage="percent"===e&&f.y/v.total*100,f.stackY=m,v.setOffset(this.pointXOffset||0,this.barW||0)),f.yBottom=c(y)?r.translate(y,0,1,0,1):null,l&&(m=this.modifyValue(m,f)),f.plotY="number"==typeof m&&1/0!==m?r.translate(m,0,1,0,1):_,f.clientX=d?i.translate(g,0,0,0,1):f.plotX,f.negative=f.y<(u||0),f.category=n&&n[f.x]!==_?n[f.x]:f.x}this.getSegments()},setTooltipPoints:function(t){var e,i,n,r,s=[],o=this.xAxis,a=o&&o.getExtremes(),l=o?o.tooltipLen||o.len:this.chart.plotSizeX,h=[];if(this.options.enableMouseTracking!==!1){for(t&&(this.tooltipPoints=null),je(this.segments||this.points,function(t){s=s.concat(t)}),o&&o.reversed&&(s=s.reverse()),this.orderTooltipPoints&&this.orderTooltipPoints(s),t=s.length,r=0;t>r;r++)if(o=s[r],e=o.x,e>=a.min&&e<=a.max)for(n=s[r+1],e=i===_?0:i+1,i=s[r+1]?pe(ue(0,ce((o.clientX+(n?n.wrappedClientX||n.clientX:l))/2)),l):l;e>=0&&i>=e;)h[e++]=o;this.tooltipPoints=h}},tooltipHeaderFormatter:function(t){var e,i=this.tooltipOptions,n=i.dateTimeLabelFormats,r=i.xDateFormat||n.year,s=this.xAxis,a=s&&"datetime"===s.options.type,i=i.headerFormat,s=s&&s.closestPointRange;if(a&&!r)if(s){for(e in j)if(j[e]>=s){r=n[e];break}}else r=n.day;return a&&r&&o(t.key)&&(i=i.replace("{point.key}","{point.key:"+r+"}")),b(i,{point:t,series:this})},onMouseOver:function(){var t=this.chart,e=t.hoverSeries;e&&e!==this&&e.onMouseOut(),this.options.events.mouseOver&&Qe(this,"mouseOver"),this.setState("hover"),t.hoverSeries=this},onMouseOut:function(){var t=this.options,e=this.chart,i=e.tooltip,n=e.hoverPoint;n&&n.onMouseOut(),this&&t.events.mouseOut&&Qe(this,"mouseOut"),i&&!t.stickyTracking&&(!i.shared||this.noSharedTooltip)&&i.hide(),this.setState(),e.hoverSeries=null},animate:function(e){var i,n=this,s=n.chart,o=s.renderer;i=n.options.animation;var a,l=s.clipBox,h=s.inverted;i&&!r(i)&&(i=ii[n.type].animation),a="_sharedClip"+i.duration+i.easing,e?(e=s[a],i=s[a+"m"],e||(s[a]=e=o.clipRect(t(l,{width:0})),s[a+"m"]=i=o.clipRect(-99,h?-s.plotLeft:-s.plotTop,99,h?s.chartWidth:s.chartHeight)),n.group.clip(e),n.markerGroup.clip(i),n.sharedClipKey=a):((e=s[a])&&(e.animate({width:s.plotSizeX},i),s[a+"m"].animate({width:s.plotSizeX+99},i)),n.animate=null,n.animationTimeout=setTimeout(function(){n.afterAnimate()},i.duration))},afterAnimate:function(){var t=this.chart,e=this.sharedClipKey,i=this.group;i&&this.options.clip!==!1&&(i.clip(t.clipRect),this.markerGroup.clip()),setTimeout(function(){e&&t[e]&&(t[e]=t[e].destroy(),t[e+"m"]=t[e+"m"].destroy())},100)},drawPoints:function(){var e,i,n,r,s,o,a,l,h,c,d=this.points,u=this.chart,f=this.options.marker,g=this.pointAttr[""],m=this.markerGroup;if(f.enabled||this._hasPointMarkers)for(r=d.length;r--;)s=d[r],i=ce(s.plotX),n=s.plotY,h=s.graphic,a=s.marker||{},e=f.enabled&&a.enabled===_||a.enabled,c=u.isInsidePlot(he(i),n,u.inverted),e&&n!==_&&!isNaN(n)&&null!==s.y?(e=s.pointAttr[s.selected?"select":""]||g,o=e.r,a=p(a.symbol,this.symbol),l=0===a.indexOf("url"),h?h.attr({visibility:c?Ae?"inherit":"visible":"hidden"}).animate(t({x:i-o,y:n-o},h.symbolName?{width:2*o,height:2*o}:{})):c&&(o>0||l)&&(s.graphic=u.renderer.symbol(a,i-o,n-o,2*o,2*o).attr(e).add(m))):h&&(s.graphic=h.destroy())},convertAttribs:function(t,e,i,n){var r,s,o=this.pointAttrToOptions,a={},t=t||{},e=e||{},i=i||{},n=n||{};for(r in o)s=o[r],a[r]=p(t[s],e[r],i[r],n[r]);return a},getAttribs:function(){var e,i=this,n=i.options,r=ii[i.type].marker?n.marker:n,s=r.states,o=s.hover,a=i.color;e={stroke:a,fill:a};var l,h,d=i.points||[],u=[],p=i.pointAttrToOptions;l=n.turboThreshold;var f,g=n.negativeColor,m=r.lineColor;if(n.marker?(o.radius=o.radius||r.radius+2,o.lineWidth=o.lineWidth||r.lineWidth+1):o.color=o.color||oi(o.color||a).brighten(o.brightness).get(),u[""]=i.convertAttribs(r,e),je(["hover","select"],function(t){u[t]=i.convertAttribs(s[t],u[""])}),i.pointAttr=u,a=d.length,!l||l>a)for(;a--;){if(l=d[a],(r=l.options&&l.options.marker||l.options)&&r.enabled===!1&&(r.radius=0),l.negative&&g&&(l.color=l.fillColor=g),e=n.colorByPoint||l.color,l.options)for(f in p)c(r[p[f]])&&(e=!0);e?(r=r||{},h=[],s=r.states||{},e=s.hover=s.hover||{},n.marker||(e.color=e.color||o.color||oi(l.color).brighten(e.brightness||o.brightness).get()),h[""]=i.convertAttribs(t({color:l.color,fillColor:l.color,lineColor:null===m?l.color:_},r),u[""]),h.hover=i.convertAttribs(s.hover,u.hover,h[""]),h.select=i.convertAttribs(s.select,u.select,h[""])):h=u,l.pointAttr=h}},destroy:function(){var t,e,i,n,r,s=this,o=s.chart,a=/AppleWebKit\/533/.test(xe),l=s.data||[];for(Qe(s,"destroy"),Ke(s),je(s.axisTypes||[],function(t){(r=s[t])&&(h(r.series,s),r.isDirty=r.forceRedraw=!0)}),s.legendItem&&s.chart.legend.destroyItem(s),e=l.length;e--;)(i=l[e])&&i.destroy&&i.destroy();s.points=null,clearTimeout(s.animationTimeout),je("area,graph,dataLabelsGroup,group,markerGroup,tracker,graphNeg,areaNeg,posClip,negClip".split(","),function(e){s[e]&&(t=a&&"group"===e?"hide":"destroy",s[e][t]())}),o.hoverSeries===s&&(o.hoverSeries=null),h(o.series,s);for(n in s)delete s[n]},getSegmentPath:function(t){var e=this,i=[],n=e.options.step;return je(t,function(r,s){var o,a=r.plotX,l=r.plotY; +e.getPointSpline?i.push.apply(i,e.getPointSpline(t,r,s)):(i.push(s?"L":"M"),n&&s&&(o=t[s-1],"right"===n?i.push(o.plotX,l):"center"===n?i.push((o.plotX+a)/2,o.plotY,(o.plotX+a)/2,l):i.push(a,o.plotY)),i.push(r.plotX,r.plotY))}),i},getGraphPath:function(){var t,e=this,i=[],n=[];return je(e.segments,function(r){t=e.getSegmentPath(r),r.length>1?i=i.concat(t):n.push(r[0])}),e.singlePoints=n,e.graphPath=i},drawGraph:function(){var t=this,e=this.options,i=[["graph",e.lineColor||this.color]],n=e.lineWidth,r=e.dashStyle,s="square"!==e.linecap,o=this.getGraphPath(),a=e.negativeColor;a&&i.push(["graphNeg",a]),je(i,function(i,a){var l=i[0],h=t[l];h?(ei(h),h.animate({d:o})):n&&o.length&&(h={stroke:i[1],"stroke-width":n,zIndex:1},r?h.dashstyle=r:s&&(h["stroke-linecap"]=h["stroke-linejoin"]="round"),t[l]=t.chart.renderer.path(o).attr(h).add(t.group).shadow(!a&&e.shadow))})},clipNeg:function(){var t,e=this.options,i=this.chart,n=i.renderer,r=e.negativeColor||e.negativeFillColor,s=this.graph,o=this.area,a=this.posClip,l=this.negClip;t=i.chartWidth;var h=i.chartHeight,c=ue(t,h),d=this.yAxis;r&&(s||o)&&(r=he(d.toPixels(e.threshold||0,!0)),0>r&&(c-=r),e={x:0,y:0,width:c,height:r},c={x:0,y:r,width:c,height:c},i.inverted&&(e.height=c.y=i.plotWidth-r,n.isVML&&(e={x:i.plotWidth-r-i.plotLeft,y:0,width:t,height:h},c={x:r+i.plotLeft-t,y:0,width:i.plotLeft+r,height:t})),d.reversed?(i=c,t=e):(i=e,t=c),a?(a.animate(i),l.animate(t)):(this.posClip=a=n.clipRect(i),this.negClip=l=n.clipRect(t),s&&this.graphNeg&&(s.clip(a),this.graphNeg.clip(l)),o&&(o.clip(a),this.areaNeg.clip(l))))},invertGroups:function(){function t(){var t={width:e.yAxis.len,height:e.xAxis.len};je(["group","markerGroup"],function(i){e[i]&&e[i].attr(t).invert()})}var e=this,i=e.chart;e.xAxis&&(Ze(i,"resize",t),Ze(e,"destroy",function(){Ke(i,"resize",t)}),t(),e.invertGroups=t)},plotGroup:function(t,e,i,n,r){var s=this[t],o=!s;return o&&(this[t]=s=this.chart.renderer.g(e).attr({visibility:i,zIndex:n||.1}).add(r)),s[o?"attr":"animate"](this.getPlotBox()),s},getPlotBox:function(){return{translateX:this.xAxis?this.xAxis.left:this.chart.plotLeft,translateY:this.yAxis?this.yAxis.top:this.chart.plotTop,scaleX:1,scaleY:1}},render:function(){var t,e=this.chart,i=this.options,n=i.animation&&!!this.animate&&e.renderer.isSVG,r=this.visible?"visible":"hidden",s=i.zIndex,o=this.hasRendered,a=e.seriesGroup;t=this.plotGroup("group","series",r,s,a),this.markerGroup=this.plotGroup("markerGroup","markers",r,s,a),n&&this.animate(!0),this.getAttribs(),t.inverted=this.isCartesian?e.inverted:!1,this.drawGraph&&(this.drawGraph(),this.clipNeg()),this.drawDataLabels&&this.drawDataLabels(),this.visible&&this.drawPoints(),this.options.enableMouseTracking!==!1&&this.drawTracker(),e.inverted&&this.invertGroups(),i.clip!==!1&&!this.sharedClipKey&&!o&&t.clip(e.clipRect),n?this.animate():o||this.afterAnimate(),this.isDirty=this.isDirtyData=!1,this.hasRendered=!0},redraw:function(){var t=this.chart,e=this.isDirtyData,i=this.group,n=this.xAxis,r=this.yAxis;i&&(t.inverted&&i.attr({width:t.plotWidth,height:t.plotHeight}),i.animate({translateX:p(n&&n.left,t.plotLeft),translateY:p(r&&r.top,t.plotTop)})),this.translate(),this.setTooltipPoints(!0),this.render(),e&&Qe(this,"updatedData")},setState:function(t){var e=this.options,i=this.graph,n=this.graphNeg,r=e.states,e=e.lineWidth,t=t||"";this.state!==t&&(this.state=t,r[t]&&r[t].enabled===!1||(t&&(e=r[t].lineWidth||e+1),i&&!i.dashstyle&&(t={"stroke-width":e},i.attr(t),n&&n.attr(t))))},setVisible:function(t,e){var i,n=this,r=n.chart,s=n.legendItem,o=r.options.chart.ignoreHiddenSeries,a=n.visible;i=(n.visible=t=n.userOptions.visible=t===_?!a:t)?"show":"hide",je(["group","dataLabelsGroup","markerGroup","tracker"],function(t){n[t]&&n[t][i]()}),r.hoverSeries===n&&n.onMouseOut(),s&&r.legend.colorizeItem(n,t),n.isDirty=!0,n.options.stacking&&je(r.series,function(t){t.options.stacking&&t.visible&&(t.isDirty=!0)}),je(n.linkedSeries,function(e){e.setVisible(t,!1)}),o&&(r.isDirtyBox=!0),e!==!1&&r.redraw(),Qe(n,i)},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(t){this.selected=t=t===_?!this.selected:t,this.checkbox&&(this.checkbox.checked=t),Qe(this,t?"select":"unselect")},drawTracker:Xe.drawTrackerGraph},t(N.prototype,{addSeries:function(t,e,i){var n,r=this;return t&&(e=p(e,!0),Qe(r,"addSeries",{options:t},function(){n=r.initSeries(t),r.isDirtyLegend=!0,r.linkSeries(),e&&r.redraw(i)})),n},addAxis:function(t,i,n,r){var s=i?"xAxis":"yAxis",o=this.options;new z(this,e(t,{index:this[s].length,isX:i})),o[s]=u(o[s]||{}),o[s].push(t),p(n,!0)&&this.redraw(r)},showLoading:function(e){var i=this.options,n=this.loadingDiv,r=i.loading;n||(this.loadingDiv=n=g(ze,{className:"highcharts-loading"},t(r.style,{zIndex:10,display:Be}),this.container),this.loadingSpan=g("span",null,r.labelStyle,n)),this.loadingSpan.innerHTML=e||i.lang.loading,this.loadingShown||(f(n,{opacity:0,display:"",left:this.plotLeft+"px",top:this.plotTop+"px",width:this.plotWidth+"px",height:this.plotHeight+"px"}),ti(n,{opacity:r.style.opacity},{duration:r.showDuration||0}),this.loadingShown=!0)},hideLoading:function(){var t=this.options,e=this.loadingDiv;e&&ti(e,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){f(e,{display:Be})}}),this.loadingShown=!1}}),t(gi.prototype,{update:function(t,e,i){var n,s=this,o=s.series,a=s.graphic,l=o.data,h=o.chart,c=o.options,e=p(e,!0);s.firePointEvent("update",{options:t},function(){s.applyOptions(t),r(t)&&(o.getAttribs(),a&&(t&&t.marker&&t.marker.symbol?s.graphic=a.destroy():a.attr(s.pointAttr[s.state||""])),t&&t.dataLabels&&s.dataLabel&&(s.dataLabel=s.dataLabel.destroy())),n=Ye(s,l),o.updateParallelArrays(s,n),c.data[n]=s.options,o.isDirty=o.isDirtyData=!0,!o.fixedBox&&o.hasCartesianSeries&&(h.isDirtyBox=!0),"point"===c.legendType&&h.legend.destroyItem(s),e&&h.redraw(i)})},remove:function(t,e){var i,n=this,r=n.series,s=r.points,o=r.chart,a=r.data;D(e,o),t=p(t,!0),n.firePointEvent("remove",null,function(){i=Ye(n,a),a.length===s.length&&s.splice(i,1),a.splice(i,1),r.options.data.splice(i,1),r.updateParallelArrays(n,"splice",i,1),n.destroy(),r.isDirty=!0,r.isDirtyData=!0,t&&o.redraw()})}}),t(mi.prototype,{addPoint:function(t,e,i,n){var r,s=this.options,o=this.data,a=this.graph,l=this.area,h=this.chart,c=this.xAxis&&this.xAxis.names,d=a&&a.shift||0,u=s.data,f=this.xData;if(D(n,h),i&&je([a,l,this.graphNeg,this.areaNeg],function(t){t&&(t.shift=d+1)}),l&&(l.isArea=!0),e=p(e,!0),n={series:this},this.pointClass.prototype.applyOptions.apply(n,[t]),a=n.x,l=f.length,this.requireSorting&&aa;)l--;this.updateParallelArrays(n,"splice",l),this.updateParallelArrays(n,l),c&&(c[a]=n.name),u.splice(l,0,t),r&&(this.data.splice(l,0,null),this.processData()),"point"===s.legendType&&this.generatePoints(),i&&(o[0]&&o[0].remove?o[0].remove(!1):(o.shift(),this.updateParallelArrays(n,"shift"),u.shift())),this.isDirtyData=this.isDirty=!0,e&&(this.getAttribs(),h.redraw())},remove:function(t,e){var i=this,n=i.chart,t=p(t,!0);i.isRemoving||(i.isRemoving=!0,Qe(i,"remove",null,function(){i.destroy(),n.isDirtyLegend=n.isDirtyBox=!0,n.linkSeries(),t&&n.redraw(e)})),i.isRemoving=!1},update:function(i,n){var r,s=this.chart,o=this.type,a=He[o].prototype,i=e(this.userOptions,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},i);this.remove(!1);for(r in a)a.hasOwnProperty(r)&&(this[r]=_);t(this,He[i.type||o].prototype),this.init(s,i),p(n,!0)&&s.redraw(!1)}}),t(z.prototype,{update:function(i,n){var r=this.chart,i=r.options[this.coll][this.options.index]=e(this.userOptions,i);this.destroy(!0),this._addedPlotLB=this.userMin=this.userMax=_,this.init(r,t(i,{events:_})),r.isDirtyBox=!0,p(n,!0)&&r.redraw()},remove:function(t){var e=this.chart,i=this.coll;je(this.series,function(t){t.remove(!1)}),h(e.axes,this),h(e[i],this),e.options[i].splice(this.options.index,1),je(e[i],function(t,e){t.options.index=e}),this.destroy(),e.isDirtyBox=!0,p(t,!0)&&e.redraw()},setTitle:function(t,e){this.update({title:t},e)},setCategories:function(t,e){this.update({categories:t},e)}});var yi=m(mi);He.line=yi,ii.area=e(We,{threshold:0});var vi=m(mi,{type:"area",getSegments:function(){var t,e,i,n,r,s=[],o=[],a=[],l=this.xAxis,h=this.yAxis,c=h.stacks[this.stackKey],d={},u=this.points,p=this.options.connectNulls;if(this.options.stacking&&!this.cropped){for(n=0;n=0;e--)s=p(t[e].yBottom,o),et&&r>l?(r=ue(t,l),o=2*l-r):t>r&&l>r&&(r=pe(t,l),o=2*l-r),o>c&&o>l?(o=ue(c,l),r=2*l-o):c>o&&l>o&&(o=pe(c,l),r=2*l-o),e.rightContX=s,e.rightContY=o}return i?(e=["C",h.rightContX||h.plotX,h.rightContY||h.plotY,n||a,r||l,a,l],h.rightContX=h.rightContY=null):e=["M",a,l],e}}),He.spline=yi,ii.areaspline=e(ii.area),vi=vi.prototype,yi=m(yi,{type:"areaspline",closedStacks:!0,getSegmentPath:vi.getSegmentPath,closeSegment:vi.closeSegment,drawGraph:vi.drawGraph,drawLegendSymbol:li.drawRectangle}),He.areaspline=yi,ii.column=e(We,{borderColor:"#FFFFFF",borderWidth:1,borderRadius:0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{brightness:.1,shadow:!1},select:{color:"#C0C0C0",borderColor:"#000000",shadow:!1}},dataLabels:{align:null,verticalAlign:null,y:null},stickyTracking:!1,threshold:0}),yi=m(mi,{type:"column",pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color",r:"borderRadius"},cropShoulder:0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){mi.prototype.init.apply(this,arguments);var t=this,e=t.chart;e.hasRendered&&je(e.series,function(e){e.type===t.type&&(e.isDirty=!0)})},getColumnMetrics:function(){var t,e,i=this,n=i.options,r=i.xAxis,s=i.yAxis,o=r.reversed,a={},l=0;n.grouping===!1?l=1:je(i.chart.series,function(n){var r=n.options,o=n.yAxis;n.type===i.type&&n.visible&&s.len===o.len&&s.pos===o.pos&&(r.stacking?(t=n.stackKey,a[t]===_&&(a[t]=l++),e=a[t]):r.grouping!==!1&&(e=l++),n.columnIndex=e)});var r=pe(fe(r.transA)*(r.ordinalSlope||n.pointRange||r.closestPointRange||1),r.len),h=r*n.groupPadding,d=(r-2*h)/l,u=n.pointWidth,n=c(u)?(d-u)/2:d*n.pointPadding,u=p(u,d-2*n);return i.columnMetrics={width:u,offset:n+(h+((o?l-(i.columnIndex||0):i.columnIndex)||0)*d-r/2)*(o?-1:1)}},translate:function(){var t=this.chart,e=this.options,i=e.borderWidth,n=this.yAxis,r=this.translatedThreshold=n.getThreshold(e.threshold),s=p(e.minPointLength,5),e=this.getColumnMetrics(),o=e.width,a=this.barW=de(ue(o,1+2*i)),l=this.pointXOffset=e.offset,h=-(i%2?.5:0),c=i%2?.5:1;t.renderer.isVML&&t.inverted&&(c+=1),mi.prototype.translate.apply(this),je(this.points,function(t){var e,i=p(t.yBottom,r),d=pe(ue(-999-i,t.plotY),n.len+999+i),u=t.plotX+l,f=a,g=pe(d,i),d=ue(d,i)-g;fe(d)s?i-s:r-(n.translate(t.y,0,1,0,1)<=r?s:0))),t.barX=u,t.pointWidth=o,i=fe(u)<.5,f=he(u+f)+h,u=he(u)+h,f-=u,e=fe(g)<.5,d=he(g+d)+c,g=he(g)+c,d-=g,i&&(u+=1,f-=1),e&&(g-=1,d+=1),t.shapeType="rect",t.shapeArgs={x:u,y:g,width:f,height:d}})},getSymbol:Oe,drawLegendSymbol:li.drawRectangle,drawGraph:Oe,drawPoints:function(){var t,i=this,n=this.chart,r=i.options,s=n.renderer,o=n.options.animationLimit||250;je(i.points,function(a){var l=a.plotY,h=a.graphic;l===_||isNaN(l)||null===a.y?h&&(a.graphic=h.destroy()):(t=a.shapeArgs,h?(ei(h),h[n.pointCount{series.name}
    ',pointFormat:"x: {point.x}
    y: {point.y}
    ",followPointer:!0},stickyTracking:!1}),yi=m(mi,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["markerGroup"],takeOrdinalPosition:!1,drawTracker:Xe.drawTrackerPoint,drawGraph:function(){this.options.lineWidth&&mi.prototype.drawGraph.call(this)},setTooltipPoints:Oe}),He.scatter=yi,ii.pie=e(We,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return this.point.name}},ignoreHiddenPoint:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}}),We={type:"pie",isCartesian:!1,pointClass:m(gi,{init:function(){gi.prototype.init.apply(this,arguments);var e,i=this;return i.y<0&&(i.y=null),t(i,{visible:i.visible!==!1,name:p(i.name,"Slice")}),e=function(t){i.slice("select"===t.type)},Ze(i,"select",e),Ze(i,"unselect",e),i},setVisible:function(t){var e,i=this,n=i.series,r=n.chart;i.visible=i.options.visible=t=t===_?!i.visible:t,n.options.data[Ye(i,n.data)]=i.options,e=t?"show":"hide",je(["graphic","dataLabel","connector","shadowGroup"],function(t){i[t]&&i[t][e]()}),i.legendItem&&r.legend.colorizeItem(i,t),!n.isDirty&&n.options.ignoreHiddenPoint&&(n.isDirty=!0,r.redraw())},slice:function(t,e,i){var n=this.series;D(i,n.chart),p(e,!0),this.sliced=this.options.sliced=t=c(t)?t:!this.sliced,n.options.data[Ye(this,n.data)]=this.options,t=t?this.slicedTranslation:{translateX:0,translateY:0},this.graphic.animate(t),this.shadowGroup&&this.shadowGroup.animate(t)}}),requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},getColor:Oe,animate:function(t){var e=this,i=e.points,n=e.startAngleRad;t||(je(i,function(t){var i=t.graphic,t=t.shapeArgs;i&&(i.attr({r:e.center[3]/2,start:n,end:n}),i.animate({r:t.r,start:t.start,end:t.end},e.options.animation))}),e.animate=null)},setData:function(t,e){mi.prototype.setData.call(this,t,!1),this.processData(),this.generatePoints(),p(e,!0)&&this.chart.redraw()},generatePoints:function(){var t,e,i,n,r=0,s=this.options.ignoreHiddenPoint;for(mi.prototype.generatePoints.call(this),e=this.points,i=e.length,t=0;i>t;t++)n=e[t],r+=s&&!n.visible?0:n.y;for(this.total=r,t=0;i>t;t++)n=e[t],n.percentage=r>0?n.y/r*100:0,n.total=r},translate:function(t){this.generatePoints();var e,i,n,r,s,o=0,a=this.options,l=a.slicedOffset,h=l+a.borderWidth,c=a.startAngle||0,d=this.startAngleRad=ye/180*(c-90),c=(this.endAngleRad=ye/180*((a.endAngle||c+360)-90))-d,u=this.points,p=a.dataLabels.distance,a=a.ignoreHiddenPoint,f=u.length;for(t||(this.center=t=this.getCenter()),this.getX=function(e,i){return n=le.asin((e-t[1])/(t[2]/2+p)),t[0]+(i?-1:1)*ge(n)*(t[2]/2+p)},r=0;f>r;r++)s=u[r],e=d+o*c,(!a||s.visible)&&(o+=s.percentage/100),i=d+o*c,s.shapeType="arc",s.shapeArgs={x:t[0],y:t[1],r:t[2]/2,innerR:t[3]/2,start:he(1e3*e)/1e3,end:he(1e3*i)/1e3},n=(i+e)/2,n>.75*c&&(n-=2*ye),s.slicedTranslation={translateX:he(ge(n)*l),translateY:he(me(n)*l)},e=ge(n)*t[2]/2,i=me(n)*t[2]/2,s.tooltipPos=[t[0]+.7*e,t[1]+.7*i],s.half=-ye/2>n||n>ye/2?1:0,s.angle=n,h=pe(h,p/2),s.labelPos=[t[0]+e+ge(n)*p,t[1]+i+me(n)*p,t[0]+e+ge(n)*h,t[1]+i+me(n)*h,t[0]+e,t[1]+i,0>p?"center":s.half?"right":"left",n]},setTooltipPoints:Oe,drawGraph:null,drawPoints:function(){var e,i,n,r,s=this,o=s.chart.renderer,a=s.options.shadow;a&&!s.shadowGroup&&(s.shadowGroup=o.g("shadow").add(s.group)),je(s.points,function(l){i=l.graphic,r=l.shapeArgs,n=l.shadowGroup,a&&!n&&(n=l.shadowGroup=o.g("shadow").add(s.shadowGroup)),e=l.sliced?l.slicedTranslation:{translateX:0,translateY:0},n&&n.attr(e),i?i.animate(t(r,e)):l.graphic=i=o.arc(r).setRadialReference(s.center).attr(l.pointAttr[l.selected?"select":""]).attr({"stroke-linejoin":"round"}).attr(e).add(s.group).shadow(a,n),void 0!==l.visible&&l.setVisible(l.visible)})},sortByAngle:function(t,e){t.sort(function(t,i){return void 0!==t.angle&&(i.angle-t.angle)*e})},drawTracker:Xe.drawTrackerPoint,drawLegendSymbol:li.drawRectangle,getCenter:hi.getCenter,getSymbol:Oe},We=m(mi,We),He.pie=We,mi.prototype.drawDataLabels=function(){var i,n,r,s,o=this,a=o.options,l=a.cursor,h=a.dataLabels,a=o.points;(h.enabled||o._hasPointLabels)&&(o.dlProcessOptions&&o.dlProcessOptions(h),s=o.plotGroup("dataLabelsGroup","data-labels",o.visible?"visible":"hidden",h.zIndex||6),n=h,je(a,function(a){var d,u,f,g=a.dataLabel,m=a.connector,y=!0;if(i=a.options&&a.options.dataLabels,d=p(i&&i.enabled,n.enabled),g&&!d)a.dataLabel=g.destroy();else if(d){if(h=e(n,i),d=h.rotation,u=a.getLabelConfig(),r=h.format?b(h.format,u):h.formatter.call(u,h),h.style.color=p(h.color,h.style.color,o.color,"black"),g)c(r)?(g.attr({text:r}),y=!1):(a.dataLabel=g=g.destroy(),m&&(a.connector=m.destroy()));else if(c(r)){g={fill:h.backgroundColor,stroke:h.borderColor,"stroke-width":h.borderWidth,r:h.borderRadius||0,rotation:d,padding:h.padding,zIndex:1};for(f in g)g[f]===_&&delete g[f];g=a.dataLabel=o.chart.renderer[d?"text":"label"](r,0,-999,null,null,null,h.useHTML).attr(g).css(t(h.style,l&&{cursor:l})).add(s).shadow(h.shadow)}g&&o.alignDataLabel(a,g,h,null,y)}}))},mi.prototype.alignDataLabel=function(e,i,n,r,s){var o=this.chart,a=o.inverted,l=p(e.plotX,-999),h=p(e.plotY,-999),c=i.getBBox();(e=this.visible&&(e.series.forceDL||o.isInsidePlot(e.plotX,e.plotY,a)))&&(r=t({x:a?o.plotWidth-h:l,y:he(a?o.plotHeight-l:h),width:0,height:0},r),t(n,{width:c.width,height:c.height}),n.rotation?(a={align:n.align,x:r.x+n.x+r.width/2,y:r.y+n.y+r.height/2},i[s?"attr":"animate"](a)):(i.align(n,null,r),a=i.alignAttr,"justify"===p(n.overflow,"justify")?this.justifyDataLabel(i,n,a,c,r,s):p(n.crop,!0)&&(e=o.isInsidePlot(a.x,a.y)&&o.isInsidePlot(a.x+c.width,a.y+c.height)))),e||(i.attr({y:-999}),i.placed=!1)},mi.prototype.justifyDataLabel=function(t,e,i,n,r,s){var o,a,l=this.chart,h=e.align,c=e.verticalAlign;o=i.x,0>o&&("right"===h?e.align="left":e.x=-o,a=!0),o=i.x+n.width,o>l.plotWidth&&("left"===h?e.align="right":e.x=l.plotWidth-o,a=!0),o=i.y,0>o&&("bottom"===c?e.verticalAlign="top":e.y=-o,a=!0),o=i.y+n.height,o>l.plotHeight&&("top"===c?e.verticalAlign="bottom":e.y=l.plotHeight-o,a=!0),a&&(t.placed=!s,t.align(e,null,r))},He.pie&&(He.pie.prototype.drawDataLabels=function(){var t,e,i,n,r,s,o,a,l,h,c,d,u=this,f=u.data,g=u.chart,m=u.options.dataLabels,y=p(m.connectorPadding,10),v=p(m.connectorWidth,1),x=g.plotWidth,g=g.plotHeight,b=p(m.softConnector,!0),w=m.distance,k=u.center,S=k[2]/2,T=k[1],C=w>0,A=[[],[]],L=[0,0,0,0],M=function(t,e){return e.y-t.y};if(u.visible&&(m.enabled||u._hasPointLabels)){for(mi.prototype.drawDataLabels.apply(u),je(f,function(t){t.dataLabel&&t.visible&&A[t.half].push(t)}),c=0;!o&&f[c];)o=f[c]&&f[c].dataLabel&&(f[c].dataLabel.getBBox().height||21),c++;for(c=2;c--;){var I,f=[],D=[],E=A[c],O=E.length;if(u.sortByAngle(E,c-.5),w>0){for(d=T-S-w;T+S+w>=d;d+=o)f.push(d);if(r=f.length,O>r){for(t=[].concat(E),t.sort(M),d=O;d--;)t[d].rank=d;for(d=O;d--;)E[d].rank>=r&&E.splice(d,1);O=E.length}for(d=0;O>d;d++){t=E[d],s=t.labelPos,t=9999;var R,z;for(z=0;r>z;z++)R=fe(f[z]-s[1]),t>R&&(t=R,I=z);if(d>I&&null!==f[d])I=d;else for(O-d+I>r&&null!==f[d]&&(I=r-O+d);null===f[I];)I++;D.push({i:I,y:f[I]}),f[I]=null}D.sort(M)}for(d=0;O>d;d++)t=E[d],s=t.labelPos,n=t.dataLabel,h=t.visible===!1?"hidden":"visible",t=s[1],w>0?(r=D.pop(),I=r.i,l=r.y,(t>l&&null!==f[I+1]||l>t&&null!==f[I-1])&&(l=t)):l=t,a=m.justify?k[0]+(c?-1:1)*(S+w):u.getX(0===I||I===f.length-1?t:l,c),n._attr={visibility:h,align:s[6]},n._pos={x:a+m.x+({left:y,right:-y}[s[6]]||0),y:l+m.y-10},n.connX=a,n.connY=l,null===this.options.size&&(r=n.width,y>a-r?L[3]=ue(he(r-a+y),L[3]):a+r>x-y&&(L[1]=ue(he(a+r-x+y),L[1])),0>l-o/2?L[0]=ue(he(-l+o/2),L[0]):l+o/2>g&&(L[2]=ue(he(l+o/2-g),L[2])))}(0===P(L)||this.verifyDataLabelOverflow(L))&&(this.placeDataLabels(),C&&v&&je(this.points,function(t){e=t.connector,s=t.labelPos,(n=t.dataLabel)&&n._pos?(h=n._attr.visibility,a=n.connX,l=n.connY,i=b?["M",a+("left"===s[6]?5:-5),l,"C",a,l,2*s[2]-s[4],2*s[3]-s[5],s[2],s[3],"L",s[4],s[5]]:["M",a+("left"===s[6]?5:-5),l,"L",s[2],s[3],"L",s[4],s[5]],e?(e.animate({d:i}),e.attr("visibility",h)):t.connector=e=u.chart.renderer.path(i).attr({"stroke-width":v,stroke:m.connectorColor||t.color||"#606060",visibility:h}).add(u.group)):e&&(t.connector=e.destroy())}))}},He.pie.prototype.placeDataLabels=function(){je(this.points,function(t){var e,t=t.dataLabel;t&&((e=t._pos)?(t.attr(t._attr),t[t.moved?"animate":"attr"](e),t.moved=!0):t&&t.attr({y:-999}))})},He.pie.prototype.alignDataLabel=Oe,He.pie.prototype.verifyDataLabelOverflow=function(t){var e,i=this.center,n=this.options,r=n.center,s=n=n.minSize||80;return null!==r[0]?s=ue(i[2]-ue(t[1],t[3]),n):(s=ue(i[2]-t[1]-t[3],n),i[0]+=(t[3]-t[1])/2),null!==r[1]?s=ue(pe(s,i[2]-ue(t[0],t[2])),n):(s=ue(pe(s,i[2]-t[0]-t[2]),n),i[1]+=(t[0]-t[2])/2),sp(this.translatedThreshold,o.plotSizeY),c=p(n.inside,!!this.options.stacking);l&&(r=e(l),a&&(r={x:o.plotWidth-r.y-r.height,y:o.plotHeight-r.x-r.width,width:r.height,height:r.width}),!c)&&(a?(r.x+=h?0:r.width,r.width=0):(r.y+=h?r.height:0,r.height=0)),n.align=p(n.align,!a||c?"center":h?"right":"left"),n.verticalAlign=p(n.verticalAlign,a||c?"middle":h?"top":"bottom"),mi.prototype.alignDataLabel.call(this,t,i,n,r,s)}),t(Highcharts,{Axis:z,Chart:N,Color:oi,Point:gi,Tick:R,Tooltip:F,Renderer:H,Series:mi,SVGElement:O,SVGRenderer:ai,arrayMin:C,arrayMax:P,charts:Re,dateFormat:G,format:b,pathAnim:Y,getOptions:function(){return X},hasBidiBug:Le,isTouchDevice:Ce,numberFormat:y,seriesTypes:He,setOptions:function(t){return X=e(!0,X,t),E(),X},addEvent:Ze,removeEvent:Ke,createElement:g,discardElement:L,css:f,each:je,extend:t,map:Ue,merge:e,pick:p,splat:u,extendClass:m,pInt:i,wrap:x,svg:Ae,canvas:Me,vml:!Ae&&!Me,product:"Highcharts",version:"3.0.8"})}(),function(){var t=Highcharts,e=t.Chart,i=t.addEvent,n=t.createElement,r=t.discardElement,s=t.css,o=t.merge,a=t.each,l=t.extend,h=Math.max,c=document,d=window,u="ontouchstart"in c.documentElement,p=t.setOptions({lang:{downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",exportButtonTitle:"Export to raster or vector image",printButtonTitle:"Print the chart"}});p.navigation={menuStyle:{border:"1px solid #A0A0A0",background:"#FFFFFF"},menuItemStyle:{padding:"0 5px",background:"none",color:"#303030",fontSize:u?"14px":"11px"},menuItemHoverStyle:{background:"#4572A5",color:"#FFFFFF"},buttonOptions:{align:"right",backgroundColor:{linearGradient:[0,0,0,20],stops:[[.4,"#F7F7F7"],[.6,"#E3E3E3"]]},borderColor:"#B0B0B0",borderRadius:3,borderWidth:1,height:20,hoverBorderColor:"#909090",hoverSymbolFill:"#81A7CF",hoverSymbolStroke:"#4572A5",symbolFill:"#E0E0E0",symbolStroke:"#A0A0A0",symbolX:11.5,symbolY:10.5,verticalAlign:"top",width:24,y:10}},p.exporting={type:"image/png",url:"http://export.highcharts.com/",width:800,buttons:{exportButton:{symbol:"exportIcon",x:-10,symbolFill:"#A8BF77",hoverSymbolFill:"#768F3E",_titleKey:"exportButtonTitle",menuItems:[{textKey:"downloadPNG",onclick:function(){this.exportChart()}},{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}]},printButton:{symbol:"printIcon",x:-36,symbolFill:"#B5C9DF",hoverSymbolFill:"#779ABF",_titleKey:"printButtonTitle",onclick:function(){this.print()}}}},l(e.prototype,{getSVG:function(t){var e,i,s,h,d,u,p=this,f=o(p.options,t);return c.createElementNS||(c.createElementNS=function(t,e){var i=c.createElement(e);return i.getBBox=function(){return p.renderer.Element.prototype.getBBox.apply({element:i})},i}),e=n("div",null,{position:"absolute",top:"-9999em",width:p.chartWidth+"px",height:p.chartHeight+"px"},c.body),l(f.chart,{renderTo:e,forExport:!0}),f.exporting.enabled=!1,f.chart.plotBackgroundImage=null,f.series=[],a(p.series,function(t){s=t.options,s.animation=!1,s.showCheckbox=!1,s&&s.marker&&/^url\(/.test(s.marker.symbol)&&(s.marker.symbol="circle"),s.data=[],a(t.data,function(t){h=t.config,d={x:t.x,y:t.y,name:t.name},"object"==typeof h&&t.config&&h.constructor!=Array&&l(d,h),s.data.push(d),(u=t.config&&t.config.marker)&&/^url\(/.test(u.symbol)&&delete u.symbol}),f.series.push(s)}),t=new Highcharts.Chart(f),i=t.container.innerHTML,f=null,t.destroy(),r(e),i=i.replace(/zIndex="[^"]+"/g,"").replace(/isShadow="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery[0-9]+="[^"]+"/g,"").replace(/isTracker="[^"]+"/g,"").replace(/url\([^#]+#/g,"url(#").replace(/id=([^" >]+)/g,'id="$1"').replace(/class=([^" ]+)/g,'class="$1"').replace(/ transform /g," ").replace(/:(path|rect)/g,"$1").replace(/style="([^"]+)"/g,function(t){return t.toLowerCase()}),i=i.replace(/(url\(#highcharts-[0-9]+)"/g,"$1").replace(/"/g,"'"),2==i.match(/ xmlns="/g).length&&(i=i.replace(/xmlns="[^"]+"/,"")),i},exportChart:function(t,e){var i,s=this.getSVG(e);t=o(this.options.exporting,t),i=n("form",{method:"post",action:t.url},{display:"none"},c.body),a(["filename","type","width","svg"],function(e){n("input",{type:"hidden",name:e,value:{filename:t.filename||"chart",type:t.type,width:t.width,svg:s}[e]},null,i)}),i.submit(),r(i)},print:function(){var t=this,e=t.container,i=[],n=e.parentNode,r=c.body,s=r.childNodes;t.isPrinting||(t.isPrinting=!0,a(s,function(t,e){1==t.nodeType&&(i[e]=t.style.display,t.style.display="none")}),r.appendChild(e),d.print(),setTimeout(function(){n.appendChild(e),a(s,function(t,e){1==t.nodeType&&(t.style.display=i[e])}),t.isPrinting=!1},1e3))},contextMenu:function(e,r,o,c,d,p){var f,g,m=this,y=m.options.navigation,v=y.menuItemStyle,x=m.chartWidth,b=m.chartHeight,w="cache-"+e,k=m[w],S=h(d,p);k||(m[w]=k=n("div",{className:"highcharts-"+e},{position:"absolute",zIndex:1e3,padding:S+"px"},m.container),f=n("div",null,l({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},y.menuStyle),k),g=function(){s(k,{display:"none"})},i(k,"mouseleave",g),a(r,function(e){e&&(n("div",{onmouseover:function(){s(this,y.menuItemHoverStyle)},onmouseout:function(){s(this,v)},innerHTML:e.text||t.getOptions().lang[e.textKey]},l({cursor:"pointer"},v),f)[u?"ontouchstart":"onclick"]=function(){g(),e.onclick.apply(m,arguments)})}),m.exportMenuWidth=k.offsetWidth,m.exportMenuHeight=k.offsetHeight),e={display:"block"},o+m.exportMenuWidth>x?e.right=x-o-d-S+"px":e.left=o-S+"px",c+p+m.exportMenuHeight>b?e.bottom=b-c-S+"px":e.top=c+p-S+"px",s(k,e)},addButton:function(e){function i(){r.attr(m),n.attr(g)}var n,r,s,a=this,h=a.renderer,c=o(a.options.navigation.buttonOptions,e),d=c.onclick,u=c.menuItems,p=c.width,f=c.height;e=c.borderWidth;var g={stroke:c.borderColor},m={stroke:c.symbolStroke,fill:c.symbolFill};c.enabled!==!1&&(n=h.rect(0,0,p,f,c.borderRadius,e).align(c,!0).attr(l({fill:c.backgroundColor,"stroke-width":e,zIndex:19},g)).add(),s=h.rect(0,0,p,f,0).align(c).attr({fill:"rgba(255, 255, 255, 0.001)",title:t.getOptions().lang[c._titleKey],zIndex:21}).css({cursor:"pointer"}).on("mouseover",function(){r.attr({stroke:c.hoverSymbolStroke,fill:c.hoverSymbolFill}),n.attr({stroke:c.hoverBorderColor})}).on("mouseout",i).on("click",i).add(),u&&(d=function(){i();var t=s.getBBox();a.contextMenu("export-menu",u,t.x,t.y,p,f)}),s.on("click",function(){d.apply(a,arguments)}),r=h.symbol(c.symbol,c.symbolX,c.symbolY,(c.symbolSize||12)/2).align(c,!0).attr(l(m,{"stroke-width":c.symbolStrokeWidth||1,zIndex:20})).add())}}),t.Renderer.prototype.symbols.exportIcon=function(t,e,i){return["M",t-i,e+i,"L",t+i,e+i,t+i,e+.5*i,t-i,e+.5*i,"Z","M",t,e+.5*i,"L",t-.5*i,e-i/3,t-i/6,e-i/3,t-i/6,e-i,t+i/6,e-i,t+i/6,e-i/3,t+.5*i,e-i/3,"Z"]},t.Renderer.prototype.symbols.printIcon=function(t,e,i){return["M",t-i,e+.5*i,"L",t+i,e+.5*i,t+i,e-i/3,t-i,e-i/3,"Z","M",t-.5*i,e-i/3,"L",t-.5*i,e-i,t+.5*i,e-i,t+.5*i,e-i/3,"Z","M",t-.5*i,e+.5*i,"L",t-.75*i,e+i,t+.75*i,e+i,t+.5*i,e+.5*i,"Z"]},e.prototype.callbacks.push(function(t){var e,i=t.options.exporting,n=i.buttons;if(i.enabled!==!1)for(e in n)t.addButton(n[e])})}();var createWindows=function(t,e,i){return function(n){createWindowsWithData(n,t,e,i)}},updatePortletPositions=function(t,e){return function(){if(t){var i=$(this).sortable("serialize");colId=$(this).attr("id").charAt($(this).attr("id").length-1),portletArray=getPortletArray(i),jsonResult={col:colId,positions:portletArray},portletArray.length>0&&$.ajax({type:"PUT",url:"../channels/"+e+"/windows",data:{_method:"PUT",page:JSON.stringify(jsonResult)},dataType:"json"})}}},decoratePortlet=function(t){return function(){var e=$(this).find(".portlet-header");return e.append(""),thisObject=$(this),"true"==t?(thisObject.find(".wtype").prepend(""),thisObject.find(".wtype-chart_window").append(""),thisObject.find(".wtype").append(""),thisObject.find(".portlet-header").css("cursor","move")):$(".column").sortable({disabled:!0}),$(this).attr("id")}},uiEditClick=function(t){return function(){var e=$(this).parents(".portlet:first").attr("id").substring(8),i="";$("#chartConfig"+e).load("/channels/"+t+"/charts/"+e+"/edit",function(){i=$("#chartOptions"+e).html(),"undefined"!=i&&i.length>2&&$.each(i.split("&"),setupChartForm(e)),$("#button"+e).click(function(){updateChart(e,!0,450,250,t,!0),$("#chartConfig"+e).dialog("close")})}).dialog({title:"Chart Options",modal:!0,resizable:!1,width:500,dialogClass:"dev-info-dialog"})}},uiViewClick=function(t){return function(){var e=$(this).parents(".portlet:first").find(".portlet-content").offset().left,i=$(this).parents(".portlet:first").find(".portlet-content").offset().top,n=$(this).parents(".portlet:first").attr("id").substring(8);$("body").append(''),$.get("/channels/"+t+"/windows/"+n+"/iframe",function(t){var e=t.replace(/id=\"iframe[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?\"/,"");$("#iframeinner"+n).text(e)}),$("#iframepopup"+n).dialog({resizable:!1,width:"300px",position:[e+200,i-200],title:"Chart Iframe",dialogClass:"dev-info-dialog"})}},uiCloseClick=function(t){return function(){var e=$(this).parents(".portlet:first").attr("id").substring(8),i=$(this).parents(".portlet:first"); +$.update("/channels/"+t+"/windows/"+e+"/hide",function(){i.hide("drop",function(){i.remove()})})}};!function(t){function e(){var e=i(this);return isNaN(e.datetime)||t(this).text(n(e.datetime)),this}function i(e){if(e=t(e),!e.data("timeago")){e.data("timeago",{datetime:s.datetime(e)});var i=t.trim(e.text());i.length>0&&e.attr("title",i)}return e.data("timeago")}function n(t){return s.inWords(r(t))}function r(t){return(new Date).getTime()-t.getTime()}t.timeago=function(e){return e instanceof Date?n(e):"string"==typeof e?n(t.timeago.parse(e)):n(t.timeago.datetime(e))};var s=t.timeago;t.extend(t.timeago,{settings:{refreshMillis:6e4,allowFuture:!1,strings:{prefixAgo:null,prefixFromNow:null,suffixAgo:"ago",suffixFromNow:"from now",seconds:"less than a minute",minute:"about a minute",minutes:"%d minutes",hour:"about an hour",hours:"about %d hours",day:"a day",days:"%d days",month:"about a month",months:"%d months",year:"about a year",years:"%d years",numbers:[]}},inWords:function(e){function i(i,r){var s=t.isFunction(i)?i(r,e):i,o=n.numbers&&n.numbers[r]||r;return s.replace(/%d/i,o)}var n=this.settings.strings,r=n.prefixAgo,s=n.suffixAgo;this.settings.allowFuture&&(0>e&&(r=n.prefixFromNow,s=n.suffixFromNow),e=Math.abs(e));var o=e/1e3,a=o/60,l=a/60,h=l/24,c=h/365,d=45>o&&i(n.seconds,Math.round(o))||90>o&&i(n.minute,1)||45>a&&i(n.minutes,Math.round(a))||90>a&&i(n.hour,1)||24>l&&i(n.hours,Math.round(l))||48>l&&i(n.day,1)||30>h&&i(n.days,Math.floor(h))||60>h&&i(n.month,1)||365>h&&i(n.months,Math.floor(h/30))||2>c&&i(n.year,1)||i(n.years,Math.floor(c));return t.trim([r,d,s].join(" "))},parse:function(e){var i=t.trim(e);return i=i.replace(/\.\d\d\d+/,""),i=i.replace(/-/,"/").replace(/-/,"/"),i=i.replace(/T/," ").replace(/Z/," UTC"),i=i.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"),new Date(i)},datetime:function(e){var i="time"===t(e).get(0).tagName.toLowerCase(),n=i?t(e).attr("datetime"):t(e).attr("title");return s.parse(n)}}),t.fn.timeago=function(){var t=this;t.each(e);var i=s.settings;return i.refreshMillis>0&&setInterval(function(){t.each(e)},i.refreshMillis),t},document.createElement("abbr"),document.createElement("time")}(jQuery),function(t){function e(t,e){return e.measureText(t).width}function i(t,e){return e.text(t),e.width()}var n,r,s,o=!1;t.fn.shorten=function(){var o={},a=arguments,l=a.callee;if(a.length)if(a[0].constructor==Object)o=a[0];else{if("options"==a[0])return t(this).eq(0).data("shorten-options");o={width:parseInt(a[0]),tail:a[1]}}this.css("visibility","hidden");var h=t.extend({},l.defaults,o);return this.each(function(){var a,c=t(this),d=c.text(),u=d.length,p=t("").html(h.tail).text(),f={shortened:!1,textOverflow:!1};if(a="none"!=c.css("float")?h.width||c.width():h.width||c.parent().width(),0>a)return!0;if(c.data("shorten-options",h),this.style.display="inline-block",this.style.whiteSpace="nowrap",n){var g=t(this),m=document.createElement("canvas");ctx=m.getContext("2d"),g.html(m),ctx.font=g.css("font-style")+" "+g.css("font-variant")+" "+g.css("font-weight")+" "+Math.ceil(parseFloat(g.css("font-size")))+"px "+g.css("font-family"),r=ctx,s=e}else g=t('
    '),$td=t("td",g),t(this).html(g),r=$td,s=i;if(g=s.call(this,d,r),a>g)return c.text(d),this.style.visibility="visible",c.data("shorten-info",f),!0;if(h.tooltip&&this.setAttribute("title",d),l._native&&!o.width&&(m=t(""+h.tail+"").text(),1==m.length&&8230==m.charCodeAt(0)))return c.text(d),this.style.overflow="hidden",this.style[l._native]="ellipsis",this.style.visibility="visible",f.shortened=!0,f.textOverflow="ellipsis",c.data("shorten-info",f),!0;p=s.call(this,p,r),a-=p,p=1.15*a,g-p>0&&(p=d.substring(0,Math.ceil(u*(p/g))),s.call(this,p,r)>a&&(d=p,u=d.length));do u--,d=d.substring(0,u);while(s.call(this,d,r)>=a);return c.html(t.trim(t("").text(d).html())+h.tail),this.style.visibility="visible",f.shortened=!0,c.data("shorten-info",f),!0})};var a=document.documentElement.style;"textOverflow"in a?o="textOverflow":"OTextOverflow"in a&&(o="OTextOverflow"),"undefined"!=typeof Modernizr&&Modernizr.canvastext?n=Modernizr.canvastext:(a=document.createElement("canvas"),n=!(!a.getContext||!a.getContext("2d")||"function"!=typeof a.getContext("2d").fillText)),t.fn.shorten._is_canvasTextSupported=n,t.fn.shorten._native=o,t.fn.shorten.defaults={tail:"…",tooltip:!0}}(jQuery),function(t){window.NestedFormEvents=function(){this.addFields=t.proxy(this.addFields,this),this.removeFields=t.proxy(this.removeFields,this)},NestedFormEvents.prototype={addFields:function(e){var i=e.currentTarget,n=t(i).data("association"),r=t("#"+t(i).data("blueprint-id")),s=r.data("blueprint"),o=(t(i).closest(".fields").closestChild("input, textarea, select").eq(0).attr("name")||"").replace(new RegExp("[[a-z_]+]$"),"");if(o)for(var a=o.match(/[a-z_]+_attributes(?=\]\[(new_)?\d+\])/g)||[],l=o.match(/[0-9]+/g)||[],h=0;h0;)for(var n=i.shift(),r=n.children(),s=0;s=a&&l>n||l>=r&&r>a||a>n&&r>l}),a=l+1;var c=0;for(var h in o)if(o[h].selected){var d=o[h].start+c;e&&i.tabString==t.value.substring(d,d+i.tabString.length)?(t.value=t.value.substring(0,d)+t.value.substring(d+i.tabString.length),c-=i.tabString.length):e||(t.value=t.value.substring(0,d)+i.tabString+t.value.substring(d),c+=i.tabString.length)}t.focus();var u=n+(c>0?i.tabString.length:0>c?-i.tabString.length:0),p=r+c;t.setSelectionRange(u,p)}}function n(e,i,n){var r=document.selection.createRange();if(e==r.parentElement())if(""==r.text)if(i){var s=r.getBookmark();r.moveStart("character",-n.tabString.length),n.tabString==r.text?r.text="":(r.moveToBookmark(s),r.moveEnd("character",n.tabString.length),n.tabString==r.text&&(r.text="")),r.collapse(!0),r.select()}else r.text=n.tabString,r.collapse(!1),r.select();else{var o=r.text,a=o.length,l=o.split("\r\n"),h=document.body.createTextRange();h.moveToElementText(e),h.setEndPoint("EndToStart",r);var c=h.text,d=c.split("\r\n"),u=c.length,p=document.body.createTextRange();p.moveToElementText(e),p.setEndPoint("StartToEnd",r);var f=p.text,g=document.body.createTextRange();g.moveToElementText(e),g.setEndPoint("StartToEnd",h);var m=g.text,y=t(e).html();t("#r3").text(u+" + "+a+" + "+f.length+" = "+y.length),u+m.length0?x.setEndPoint("StartToEnd",h):x.setEndPoint("StartToStart",h),x.setEndPoint("EndToEnd",r),x.select()}}t.fn.tabby=function(i){var n=t.extend({},t.fn.tabby.defaults,i),r=t.fn.tabby.pressed;return this.each(function(){$this=t(this);var i=t.meta?t.extend({},n,$this.data()):n;$this.bind("keydown",function(n){var s=t.fn.tabby.catch_kc(n);return 16==s&&(r.shft=!0),17==s&&(r.ctrl=!0,setTimeout("$.fn.tabby.pressed.ctrl = false;",1e3)),18==s&&(r.alt=!0,setTimeout("$.fn.tabby.pressed.alt = false;",1e3)),9!=s||r.ctrl||r.alt?void 0:(n.preventDefault,r.last=s,setTimeout("$.fn.tabby.pressed.last = null;",0),e(t(n.target).get(0),r.shft,i),!1)}).bind("keyup",function(e){16==t.fn.tabby.catch_kc(e)&&(r.shft=!1)}).bind("blur",function(e){9==r.last&&t(e.target).one("focus",function(){r.last=null}).get(0).focus()})})},t.fn.tabby.catch_kc=function(t){return t.keyCode?t.keyCode:t.charCode?t.charCode:t.which},t.fn.tabby.pressed={shft:!1,ctrl:!1,alt:!1,last:null},t.fn.tabby.defaults={tabString:String.fromCharCode(9)}}(jQuery),function(t,e,i){var n={required:"The %s field is required.",matches:"The %s field does not match the %s field.",valid_email:"The %s field must contain a valid email address.",min_length:"The %s field must be at least %s characters in length.",max_length:"The %s field must not exceed %s characters in length.",exact_length:"The %s field must be exactly %s characters in length.",greater_than:"The %s field must contain a number greater than %s.",less_than:"The %s field must contain a number less than %s.",alpha:"The %s field must only contain alphabetical characters.",alpha_numeric:"The %s field must only contain alpha-numeric characters.",alpha_dash:"The %s field must only contain alpha-numeric characters, underscores, and dashes.",numeric:"The %s field must contain only numbers.",integer:"The %s field must contain an integer."},r=function(){},s=/^(.+)\[(.+)\]$/,o=/^[0-9]+$/,a=/^\-?[0-9]+$/,l=/^\-?[0-9]*\.?[0-9]+$/,h=/^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,6}$/i,c=/^[a-z]+$/i,d=/^[a-z0-9]+$/i,u=/^[a-z0-9_-]+$/i,p=function(t,i,n){for(this.callback=n||r,this.errors=[],this.fields={},this.form=e.forms[t]||{},this.messages={},this.handlers={},t=0,n=i.length;n>t;t++){var s=i[t];s.name&&s.rules&&(this.fields[s.name]={name:s.name,display:s.display||s.name,rules:s.rules,type:null,value:null,checked:null})}this.form.onsubmit=function(t){return function(e){try{return t._validateForm(e)}catch(i){}}}(this)};p.prototype.setMessage=function(t,e){return this.messages[t]=e,this},p.prototype.registerCallback=function(t,e){return t&&"string"==typeof t&&e&&"function"==typeof e&&(this.handlers[t]=e),this},p.prototype._validateForm=function(t){this.errors=[];for(var e in this.fields)if(this.fields.hasOwnProperty(e)){var n=this.fields[e]||{},r=this.form[n.name];r&&r!==i&&(n.type=r.type,n.value=r.value,n.checked=r.checked),this._validateField(n)}if("function"==typeof this.callback&&this.callback(this.errors,t),this.errors.length>0){if(!t||!t.preventDefault)return!1;t.preventDefault()}return!0},p.prototype._validateField=function(t){var e=t.rules.split("|");if(-1!==t.rules.indexOf("required")||t.value&&""!==t.value&&t.value!==i)for(var r=0,o=e.length;o>r;r++){var a=e[r],l=null,h=!1;if((parts=s.exec(a))&&(a=parts[1],l=parts[2]),"function"==typeof this._hooks[a]?this._hooks[a].apply(this,[t,l])||(h=!0):"callback_"===a.substring(0,9)&&(a=a.substring(9,a.length),"function"==typeof this.handlers[a]&&this.handlers[a].apply(this,[t.value])===!1&&(h=!0)),h){(e=this.messages[a]||n[a])?(t=e.replace("%s",t.display),l&&(t=t.replace("%s",this.fields[l]?this.fields[l].display:l)),this.errors.push(t)):this.errors.push("An error has occurred with the "+t.display+" field.");break}}},p.prototype._hooks={required:function(t){var e=t.value;return"checkbox"===t.type?t.checked===!0:null!==e&&""!==e},matches:function(t,e){return(el=this.form[e])?t.value===el.value:!1},valid_email:function(t){return h.test(t.value)},min_length:function(t,e){return o.test(e)?t.value.length>=e:!1},max_length:function(t,e){return o.test(e)?t.value.length<=e:!1},exact_length:function(t,e){return o.test(e)?t.value.length==e:!1},greater_than:function(t,e){return l.test(t.value)?parseFloat(t.value)>parseFloat(e):!1},less_than:function(t,e){return l.test(t.value)?parseFloat(t.value)="0"&&"7">=i?parseInt(t.substring(1),8):"u"===i||"x"===i?parseInt(t.substring(2),16):t.charCodeAt(1)}function i(t){return 32>t?(16>t?"\\x0":"\\x")+t.toString(16):(t=String.fromCharCode(t),("\\"===t||"-"===t||"["===t||"]"===t)&&(t="\\"+t),t)}function n(t){for(var n=t.substring(1,t.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),t=[],r=[],s="^"===n[0],o=s?1:0,a=n.length;a>o;++o){var l=n[o];if(/\\[bdsw]/i.test(l))t.push(l);else{var h,l=e(l);a>o+2&&"-"===n[o+1]?(h=e(n[o+2]),o+=2):h=l,r.push([l,h]),65>h||l>122||(65>h||l>90||r.push([32|Math.max(65,l),32|Math.min(h,90)]),97>h||l>122||r.push([-33&Math.max(97,l),-33&Math.min(h,122)]))}}for(r.sort(function(t,e){return t[0]-e[0]||e[1]-t[1]}),n=[],l=[0/0,0/0],o=0;oa[0]&&(a[1]+1>a[0]&&r.push("-"),r.push(i(a[1])));return r.push("]"),r.join("")}function r(t){for(var e=t.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),i=e.length,r=[],a=0,l=0;i>a;++a){var h=e[a];"("===h?++l:"\\"===h.charAt(0)&&(h=+h.substring(1))&&l>=h&&(r[h]=-1)}for(a=1;aa;++a)h=e[a],"("===h?(++l,void 0===r[l]&&(e[a]="(?:")):"\\"===h.charAt(0)&&(h=+h.substring(1))&&l>=h&&(e[a]="\\"+r[l]);for(l=a=0;i>a;++a)"^"===e[a]&&"^"!==e[a+1]&&(e[a]="");if(t.ignoreCase&&o)for(a=0;i>a;++a)h=e[a],t=h.charAt(0),h.length>=2&&"["===t?e[a]=n(h):"\\"!==t&&(e[a]=h.replace(/[A-Za-z]/g,function(t){return t=t.charCodeAt(0),"["+String.fromCharCode(-33&t,32|t)+"]"}));return e.join("")}for(var s=0,o=!1,a=!1,l=0,h=t.length;h>l;++l){var c=t[l];if(c.ignoreCase)a=!0;else if(/[a-z]/i.test(c.source.replace(/\\u[\da-f]{4}|\\x[\da-f]{2}|\\[^UXux]/gi,""))){o=!0,a=!1;break}}for(var d={b:8,t:9,n:10,v:11,f:12,r:13},u=[],l=0,h=t.length;h>l;++l){if(c=t[l],c.global||c.multiline)throw Error(""+c);u.push("(?:"+r(c)+")")}return RegExp(u.join("|"),a?"gi":"g")}function e(t){function e(t){switch(t.nodeType){case 1:if(n.test(t.className))break;for(var i=t.firstChild;i;i=i.nextSibling)e(i);i=t.nodeName,("BR"===i||"LI"===i)&&(r[a]="\n",o[a<<1]=s++,o[a++<<1|1]=t);break;case 3:case 4:i=t.nodeValue,i.length&&(i=l?i.replace(/\r\n?/g,"\n"):i.replace(/[\t\n\r ]+/g," "),r[a]=i,o[a<<1]=s,s+=i.length,o[a++<<1|1]=t)}}var i,n=/(?:^|\s)nocode(?:\s|$)/,r=[],s=0,o=[],a=0;t.currentStyle?i=t.currentStyle.whiteSpace:window.getComputedStyle&&(i=document.defaultView.getComputedStyle(t,q).getPropertyValue("white-space"));var l=i&&"pre"===i.substring(0,3);return e(t),{a:r.join("").replace(/\n$/,""),c:o}}function i(t,e,i,n){e&&(t={a:e,d:t},i(t),n.push.apply(n,t.e))}function n(e,n){function r(t){for(var e=t.d,h=[e,"pln"],c=0,d=t.a.match(s)||[],u={},p=0,f=d.length;f>p;++p){var g,m=d[p],y=u[m],v=void 0;if("string"==typeof y)g=!1;else{var x=o[m.charAt(0)];if(x)v=m.match(x[1]),y=x[0];else{for(g=0;l>g;++g)if(x=n[g],v=m.match(x[1])){y=x[0];break}v||(y="pln")}!(g=y.length>=5&&"lang-"===y.substring(0,5))||v&&"string"==typeof v[1]||(g=!1,y="src"),g||(u[m]=y)}if(x=c,c+=m.length,g){g=v[1];var b=m.indexOf(g),w=b+g.length;v[2]&&(w=m.length-v[2].length,b=w-g.length),y=y.substring(5),i(e+x,m.substring(0,b),r,h),i(e+x+b,g,a(y,g),h),i(e+x+w,m.substring(w),r,h)}else h.push(e+x,y)}t.e=h}var s,o={};!function(){for(var i=e.concat(n),r=[],a={},l=0,h=i.length;h>l;++l){var c=i[l],d=c[3];if(d)for(var u=d.length;--u>=0;)o[d.charAt(u)]=c;c=c[1],d=""+c,a.hasOwnProperty(d)||(r.push(c),a[d]=q)}r.push(/[\S\s]/),s=t(r)}();var l=n.length;return r}function r(t){var e=[],i=[];t.tripleQuotedStrings?e.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):t.multiLineStrings?e.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,q,"'\"`"]):e.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]),t.verbatimStrings&&i.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var r=t.hashComments;return r&&(t.cStyleComments?(r>1?e.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):e.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),i.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):e.push(["com",/^#[^\n\r]*/,q,"#"])),t.cStyleComments&&(i.push(["com",/^\/\/[^\n\r]*/,q]),i.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q])),t.regexLiterals&&i.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]),(r=t.types)&&i.push(["typ",r]),t=(""+t.keywords).replace(/^ | $/g,""),t.length&&i.push(["kwd",RegExp("^(?:"+t.replace(/[\s,]+/g,"|")+")\\b"),q]),e.push(["pln",/^\s+/,q," \r\n  "]),i.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]),n(e,i)}function s(t,e){function i(t){switch(t.nodeType){case 1:if(s.test(t.className))break;if("BR"===t.nodeName)n(t),t.parentNode&&t.parentNode.removeChild(t);else for(t=t.firstChild;t;t=t.nextSibling)i(t);break;case 3:case 4:if(l){var e=t.nodeValue,r=e.match(o);if(r){var h=e.substring(0,r.index);t.nodeValue=h,(e=e.substring(r.index+r[0].length))&&t.parentNode.insertBefore(a.createTextNode(e),t.nextSibling),n(t),h||t.parentNode.removeChild(t)}}}}function n(t){function e(t,i){var n=i?t.cloneNode(!1):t,r=t.parentNode;if(r){var r=e(r,1),s=t.nextSibling;r.appendChild(n);for(var o=s;o;o=s)s=o.nextSibling,r.appendChild(o)}return n}for(;!t.nextSibling;)if(t=t.parentNode,!t)return;for(var i,t=e(t.nextSibling,0);(i=t.parentNode)&&1===i.nodeType;)t=i;h.push(t)}var r,s=/(?:^|\s)nocode(?:\s|$)/,o=/\r\n?|\n/,a=t.ownerDocument;t.currentStyle?r=t.currentStyle.whiteSpace:window.getComputedStyle&&(r=a.defaultView.getComputedStyle(t,q).getPropertyValue("white-space"));var l=r&&"pre"===r.substring(0,3);for(r=a.createElement("LI");t.firstChild;)r.appendChild(t.firstChild);for(var h=[r],c=0;cc;++c)r=h[c],r.className="L"+(c+u)%10,r.firstChild||r.appendChild(a.createTextNode(" ")),d.appendChild(r);t.appendChild(d)}function o(t,e){for(var i=e.length;--i>=0;){var n=e[i];x.hasOwnProperty(n)?window.console&&console.warn("cannot override language handler %s",n):x[n]=t}}function a(t,e){return t&&x.hasOwnProperty(t)||(t=/^\s*f;)d[f]!==d[f+2]?(d[p++]=d[f++],d[p++]=d[f++]):f+=2;for(u=p,f=p=0;u>f;){for(var g=d[f],m=d[f+1],y=f+2;u>=y+2&&d[y+1]===m;)y+=2;d[p++]=g,d[p++]=m,f=y}for(d.length=p;c>r;){var v,x=h[r+2]||l,b=d[t+2]||l,y=Math.min(x,b),w=h[r+1];if(1!==w.nodeType&&(v=o.substring(n,y))){s&&(v=v.replace(i,"\r")),w.nodeValue=v;var k=w.ownerDocument,S=k.createElement("SPAN");S.className=d[t+1];var T=w.parentNode;T.replaceChild(S,w),S.appendChild(w),x>n&&(h[r+1]=w=k.createTextNode(o.substring(y,x)),T.insertBefore(w,S.nextSibling))}n=y,n>=x&&(r+=2),n>=b&&(t+=2)}}catch(C){"console"in window&&console.log(C&&C.stack?C.stack:C)}}var h=["break,continue,do,else,for,if,return,while"],c=[[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],d=[c,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],u=[c,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],p=[u,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],c=[c,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],f=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],g=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],h=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],m=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,y=/\S/,v=r({keywords:[d,p,c,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+f,g,h],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),x={};o(v,["default-code"]),o(n([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]),o(n([["pln",/^\s+/,q," \r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]),o(n([],[["atv",/^[\S\s]+/]]),["uq.val"]),o(r({keywords:d,hashComments:!0,cStyleComments:!0,types:m}),["c","cc","cpp","cxx","cyc","m"]),o(r({keywords:"null,true,false"}),["json"]),o(r({keywords:p,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:m}),["cs"]),o(r({keywords:u,cStyleComments:!0}),["java"]),o(r({keywords:h,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]),o(r({keywords:f,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]),o(r({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]),o(r({keywords:g,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]),o(r({keywords:c,cStyleComments:!0,regexLiterals:!0}),["js"]),o(r({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]),o(n([],[["str",/^[\S\s]+/]]),["regex"]),window.prettyPrintOne=function(t,e,i){var n=document.createElement("PRE");return n.innerHTML=t,i&&s(n,i),l({g:e,i:i,h:n}),n.innerHTML},window.prettyPrint=function(t){function e(){for(var i=window.PR_SHOULD_USE_CONTINUATION?h.now()+250:1/0;d=0){var a,p,o=o.match(u);if(p=!o){p=r;for(var f=void 0,g=p.firstChild;g;g=g.nextSibling)var m=g.nodeType,f=1===m?f?p:g:3===m?y.test(g.nodeValue)?p:f:f;p=(a=f===p?void 0:f)&&"CODE"===a.tagName}for(p&&(o=a.className.match(u)),o&&(o=o[1]),p=!1,f=r.parentNode;f;f=f.parentNode)if(("pre"===f.tagName||"code"===f.tagName||"xmp"===f.tagName)&&f.className&&f.className.indexOf("prettyprint")>=0){p=!0;break}p||((p=(p=r.className.match(/\blinenums\b(?::(\d+))?/))?p[1]&&p[1].length?+p[1]:!0:!1)&&s(r,p),c={g:o,h:r,i:p},l(c))}}do;++o)n.push(i[r][o]);var i=q,h=Date;h.now||(h={now:function(){return+new Date}});var c,d=0,u=/\blang(?:uage)?-([\w.]+)(?!\S)/;e()},window.PR={createSimpleLexer:n,registerLangHandler:o,sourceDecorator:r,PR_ATTRIB_NAME:"atn",PR_ATTRIB_VALUE:"atv",PR_COMMENT:"com",PR_DECLARATION:"dec",PR_KEYWORD:"kwd",PR_LITERAL:"lit",PR_NOCODE:"nocode",PR_PLAIN:"pln",PR_PUNCTUATION:"pun",PR_SOURCE:"src",PR_STRING:"str",PR_TAG:"tag",PR_TYPE:"typ"}}(),!function(t){t(function(){window.prettyPrint&&prettyPrint()})}(window.jQuery),$(document).ready(function(){$(".response").click(function(){var t=$(this).data("response_type");$(".response").removeClass("active"),$(".response-"+t).addClass("active"),$(".format").hide(),$(".format-"+t).show()})}),$(document).ready(function(){$(".flash").length>0&&($(".flash").on("click",function(){$(this).hide("slow")}),setTimeout(function(){$(".flash").length>0&&$(".flash").hide("slow")},15e3)),$("#talkback_command_add").click(function(){$(this).hide(),$("#talkback_command_add_form").removeClass("hide")})}); \ No newline at end of file diff --git a/public/assets/application-0b135d70dfcec58a528db9562b0ccf06.js.gz b/public/assets/application-0b135d70dfcec58a528db9562b0ccf06.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..9265798fff37758e744e4a1bc11966c96fa7816b GIT binary patch literal 70590 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

    j|`Ub2+a=t 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.push([i,t])});for(var l="";a.length>0;){var h=a.pop();"width"==h[0]&&(i=parseInt(h[1])),"height"==h[0]&&(n=parseInt(h[1])),("type"!=h[0]||"line"!=h[1])&&(l+="&"+h[0]+"="+encodeURIComponent(h[1]))}l.length>0&&(src+="?"+l.substring(1)),e&&t>0&&s?$.update("/channels/"+r+"/charts/"+t,{newOptions:{options:l}}):e&&t>0&&$.update("/channels/"+r+"/charts/"+t,{options:l}),$("#embed"+t).val(''),$("#iframe"+t).attr("src",src),$("#iframe"+t).attr("width",i),$("#iframe"+t).attr("height",n)}function updateSelectValues(){selectedValue=$(this).val(),$(".mutuallyexclusive"+index).each(function(){$(this).val("")}),$(this).val(selectedValue)}function setupChartForm(t){return function(e,i){i.length>0&&$("#"+i.split("=")[0]+"_"+t).val(decodeURIComponent(i.split("=")[1]))}}function setupColumns(t,e){$(sortColumnSetup(t,e)),$(".column").disableSelection()}function createWindowsWithData(t,e,i,n){for(var r in t){for(var s in t[r])var o=s;if(t[r].chart_window&&(a=t[r].chart_window),t[r].plugin_window&&(a=t[r].plugin_window),t[r].portlet_window&&(a=t[r].portlet_window),"undefined"==a)var a=t[r].portlet_window?t[r].portlet_window:t[r].chart_window;colId=a.col,title=a.title;var l=a.html;if(t[r].chart_window){var h=a.id;$("body").append("

    ")}var c=addWindow(n,colId,a.id,o,title,l);c.each(decoratePortlet(e)),c.find(".ui-toggle").click(uiToggleClick),c.find(".ui-view").click(uiViewClick(i)),c.find(".ui-edit").click(uiEditClick(i)),c.find(".ui-close").click(uiCloseClick(i))}}function addWindow(t,e,i,n,r,s){if($("#"+t+"_dialog"+e).append('
    '+r+'
    '+s+"
    "),$("#portlet_"+i).length>1)throw"Portlet count doesn't match what's expected";return $("#portlet_"+i)}function sortColumnSetup(t,e){$(".column").sortable({opacity:.6,helper:function(){return $("
    Drop to re-position
    ")},connectWith:".column",update:updatePortletPositions(t,e)})}function getPortletArray(t){var e=new Array,n=t.split("&");for(i in n)val=n[i].split("=")[1],e.push(val);return e}function uiToggleClick(){$(this).toggleClass("ui-icon-minusthick").toggleClass("ui-icon-plusthick"),$(this).parents(".portlet:first").find(".portlet-content").toggle()}!function(t,e){t.rails!==e&&t.error("jquery-ujs has already been loaded!");var i,n=t(document);t.rails=i={linkClickSelector:"a[data-confirm], a[data-method], a[data-remote], a[data-disable-with]",buttonClickSelector:"button[data-remote]",inputChangeSelector:"select[data-remote], input[data-remote], textarea[data-remote]",formSubmitSelector:"form",formInputClickSelector:"form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])",disableSelector:"input[data-disable-with], button[data-disable-with], textarea[data-disable-with]",enableSelector:"input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled",requiredInputSelector:"input[name][required]:not([disabled]),textarea[name][required]:not([disabled])",fileInputSelector:"input[type=file]",linkDisableSelector:"a[data-disable-with]",CSRFProtection:function(e){var i=t('meta[name="csrf-token"]').attr("content");i&&e.setRequestHeader("X-CSRF-Token",i)},fire:function(e,i,n){var r=t.Event(i);return e.trigger(r,n),r.result!==!1},confirm:function(t){return confirm(t)},ajax:function(e){return t.ajax(e)},href:function(t){return t.attr("href")},handleRemote:function(n){var r,s,o,a,l,h,c,d;if(i.fire(n,"ajax:before")){if(a=n.data("cross-domain"),l=a===e?null:a,h=n.data("with-credentials")||null,c=n.data("type")||t.ajaxSettings&&t.ajaxSettings.dataType,n.is("form")){r=n.attr("method"),s=n.attr("action"),o=n.serializeArray();var u=n.data("ujs:submit-button");u&&(o.push(u),n.data("ujs:submit-button",null))}else n.is(i.inputChangeSelector)?(r=n.data("method"),s=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):n.is(i.buttonClickSelector)?(r=n.data("method")||"get",s=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):(r=n.data("method"),s=i.href(n),o=n.data("params")||null);d={type:r||"GET",data:o,dataType:c,beforeSend:function(t,r){return r.dataType===e&&t.setRequestHeader("accept","*/*;q=0.5, "+r.accepts.script),i.fire(n,"ajax:beforeSend",[t,r])},success:function(t,e,i){n.trigger("ajax:success",[t,e,i])},complete:function(t,e){n.trigger("ajax:complete",[t,e])},error:function(t,e,i){n.trigger("ajax:error",[t,e,i])},crossDomain:l},h&&(d.xhrFields={withCredentials:h}),s&&(d.url=s);var p=i.ajax(d);return n.trigger("ajax:send",p),p}return!1},handleMethod:function(n){var r=i.href(n),s=n.data("method"),o=n.attr("target"),a=t("meta[name=csrf-token]").attr("content"),l=t("meta[name=csrf-param]").attr("content"),h=t('
    '),c='';l!==e&&a!==e&&(c+=''),o&&h.attr("target",o),h.hide().append(c).appendTo("body"),h.submit()},disableFormElements:function(e){e.find(i.disableSelector).each(function(){var e=t(this),i=e.is("button")?"html":"val";e.data("ujs:enable-with",e[i]()),e[i](e.data("disable-with")),e.prop("disabled",!0)})},enableFormElements:function(e){e.find(i.enableSelector).each(function(){var e=t(this),i=e.is("button")?"html":"val";e.data("ujs:enable-with")&&e[i](e.data("ujs:enable-with")),e.prop("disabled",!1)})},allowAction:function(t){var e,n=t.data("confirm"),r=!1;return n?(i.fire(t,"confirm")&&(r=i.confirm(n),e=i.fire(t,"confirm:complete",[r])),r&&e):!0},blankInputs:function(e,i,n){var r,s,o=t(),a=i||"input,textarea",l=e.find(a);return l.each(function(){if(r=t(this),s=r.is("input[type=checkbox],input[type=radio]")?r.is(":checked"):r.val(),!s==!n){if(r.is("input[type=radio]")&&l.filter('input[type=radio]:checked[name="'+r.attr("name")+'"]').length)return!0;o=o.add(r)}}),o.length?o:!1},nonBlankInputs:function(t,e){return i.blankInputs(t,e,!0)},stopEverything:function(e){return t(e.target).trigger("ujs:everythingStopped"),e.stopImmediatePropagation(),!1},disableElement:function(t){t.data("ujs:enable-with",t.html()),t.html(t.data("disable-with")),t.bind("click.railsDisable",function(t){return i.stopEverything(t)})},enableElement:function(t){t.data("ujs:enable-with")!==e&&(t.html(t.data("ujs:enable-with")),t.removeData("ujs:enable-with")),t.unbind("click.railsDisable")}},i.fire(n,"rails:attachBindings")&&(t.ajaxPrefilter(function(t,e,n){t.crossDomain||i.CSRFProtection(n)}),n.delegate(i.linkDisableSelector,"ajax:complete",function(){i.enableElement(t(this))}),n.delegate(i.linkClickSelector,"click.rails",function(n){var r=t(this),s=r.data("method"),o=r.data("params");if(!i.allowAction(r))return i.stopEverything(n);if(r.is(i.linkDisableSelector)&&i.disableElement(r),r.data("remote")!==e){if(!(!n.metaKey&&!n.ctrlKey||s&&"GET"!==s||o))return!0;var a=i.handleRemote(r);return a===!1?i.enableElement(r):a.error(function(){i.enableElement(r)}),!1}return r.data("method")?(i.handleMethod(r),!1):void 0}),n.delegate(i.buttonClickSelector,"click.rails",function(e){var n=t(this);return i.allowAction(n)?(i.handleRemote(n),!1):i.stopEverything(e)}),n.delegate(i.inputChangeSelector,"change.rails",function(e){var n=t(this);return i.allowAction(n)?(i.handleRemote(n),!1):i.stopEverything(e)}),n.delegate(i.formSubmitSelector,"submit.rails",function(n){var r=t(this),s=r.data("remote")!==e,o=i.blankInputs(r,i.requiredInputSelector),a=i.nonBlankInputs(r,i.fileInputSelector);if(!i.allowAction(r))return i.stopEverything(n);if(o&&r.attr("novalidate")==e&&i.fire(r,"ajax:aborted:required",[o]))return i.stopEverything(n);if(s){if(a){setTimeout(function(){i.disableFormElements(r)},13);var l=i.fire(r,"ajax:aborted:file",[a]);return l||setTimeout(function(){i.enableFormElements(r)},13),l}return i.handleRemote(r),!1}setTimeout(function(){i.disableFormElements(r)},13)}),n.delegate(i.formInputClickSelector,"click.rails",function(e){var n=t(this);if(!i.allowAction(n))return i.stopEverything(e);var r=n.attr("name"),s=r?{name:r,value:n.val()}:null;n.closest("form").data("ujs:submit-button",s)}),n.delegate(i.formSubmitSelector,"ajax:beforeSend.rails",function(e){this==e.target&&i.disableFormElements(t(this))}),n.delegate(i.formSubmitSelector,"ajax:complete.rails",function(e){this==e.target&&i.enableFormElements(t(this))}),t(function(){var e=t("meta[name=csrf-token]").attr("content"),i=t("meta[name=csrf-param]").attr("content");t('form input[name="'+i+'"]').val(e)}))}(jQuery),function(t){t.cookie=function(e,i,n){if(arguments.length>1&&(!/Object/.test(Object.prototype.toString.call(i))||null===i||void 0===i)){if(n=t.extend({},n),(null===i||void 0===i)&&(n.expires=-1),"number"==typeof n.expires){var r=n.expires,s=n.expires=new Date;s.setDate(s.getDate()+r)}return i=String(i),document.cookie=[encodeURIComponent(e),"=",n.raw?i:encodeURIComponent(i),n.expires?"; expires="+n.expires.toUTCString():"",n.path?"; path="+n.path:"",n.domain?"; domain="+n.domain:"",n.secure?"; secure":""].join("")}n=i||{};for(var o,a=n.raw?function(t){return t}:decodeURIComponent,l=document.cookie.split("; "),h=0;o=l[h]&&l[h].split("=");h++)if(a(o[0])===e)return a(o[1]||"");return null}}(jQuery),function(){function t(t,e){var i;t||(t={});for(i in e)t[i]=e[i];return t}function e(){var t,e,i=arguments,n={},r=function(t,e){var i,n;"object"!=typeof t&&(t={});for(n in e)e.hasOwnProperty(n)&&(i=e[n],t[n]=i&&"object"==typeof i&&"[object Array]"!==Object.prototype.toString.call(i)&&"number"!=typeof i.nodeType?r(t[n]||{},i):e[n]);return t};for(i[0]===!0&&(n=i[1],i=Array.prototype.slice.call(i,2)),e=i.length,t=0;e>t;t++)n=r(n,i[t]);return n}function i(t,e){return parseInt(t,e||10)}function n(t){return"string"==typeof t}function r(t){return"object"==typeof t}function s(t){return"[object Array]"===Object.prototype.toString.call(t)}function o(t){return"number"==typeof t}function a(t){return le.log(t)/le.LN10}function l(t){return le.pow(10,t)}function h(t,e){for(var i=t.length;i--;)if(t[i]===e){t.splice(i,1);break}}function c(t){return t!==_&&null!==t}function d(t,e,i){var s,o;if(n(e))c(i)?t.setAttribute(e,i):t&&t.getAttribute&&(o=t.getAttribute(e));else if(c(e)&&r(e))for(s in e)t.setAttribute(s,e[s]);return o}function u(t){return s(t)?t:[t]}function p(){var t,e,i=arguments,n=i.length;for(t=0;n>t;t++)if(e=i[t],"undefined"!=typeof e&&null!==e)return e}function f(e,i){we&&i&&i.opacity!==_&&(i.filter="alpha(opacity="+100*i.opacity+")"),t(e.style,i)}function g(e,i,n,r,s){return e=oe.createElement(e),i&&t(e,i),s&&f(e,{padding:0,border:Be,margin:0}),n&&f(e,n),r&&r.appendChild(e),e}function m(e,i){var n=function(){};return n.prototype=new e,t(n.prototype,i),n}function y(t,e,n,r){var s=X.lang,t=+t||0,o=-1===e?(t.toString().split(".")[1]||"").length:isNaN(e=fe(e))?2:e,e=void 0===n?s.decimalPoint:n,r=void 0===r?s.thousandsSep:r,s=0>t?"-":"",n=String(i(t=fe(t).toFixed(o))),a=n.length>3?n.length%3:0;return s+(a?n.substr(0,a)+r:"")+n.substr(a).replace(/(\d{3})(?=\d)/g,"$1"+r)+(o?e+fe(t-n).toFixed(o).slice(2):"")}function v(t,e){return Array((e||2)+1-String(t).length).join(0)+t}function x(t,e,i){var n=t[e];t[e]=function(){var t=Array.prototype.slice.call(arguments);return t.unshift(n),i.apply(this,t)}}function b(t,e){for(var i,n,r,s,o,a="{",l=!1,h=[];-1!==(a=t.indexOf(a));){if(i=t.slice(0,a),l){for(n=i.split(":"),r=n.shift().split("."),o=r.length,i=e,s=0;o>s;s++)i=i[r[s]];n.length&&(n=n.join(":"),r=/\.([0-9])/,s=X.lang,o=void 0,/f$/.test(n)?(o=(o=n.match(r))?o[1]:-1,i=y(i,o,s.decimalPoint,n.indexOf(",")>-1?s.thousandsSep:"")):i=G(n,i))}h.push(i),t=t.slice(a+1),a=(l=!l)?"}":"{"}return h.push(t),h.join("")}function w(t){return le.pow(10,ce(le.log(t)/le.LN10))}function k(t,e,i,n){var r,i=p(i,1);for(r=t/i,e||(e=[1,2,2.5,5,10],n&&n.allowDecimals===!1&&(1===i?e=[1,2,5,10]:.1>=i&&(e=[1/i]))),n=0;nn;n++)t[n].ss_i=n;for(t.sort(function(t,n){return i=e(t,n),0===i?t.ss_i-n.ss_i:i}),n=0;r>n;n++)delete t[n].ss_i}function C(t){for(var e=t.length,i=t[0];e--;)t[e]i&&(i=t[e]);return i}function A(t,e){for(var i in t)t[i]&&t[i]!==e&&t[i].destroy&&t[i].destroy(),delete t[i]}function L(t){W||(W=g(ze)),t&&W.appendChild(t),W.innerHTML=""}function M(t,e){var i="Highcharts error #"+t+": www.highcharts.com/errors/"+t;if(e)throw i;ae.console&&console.log(i)}function I(t){return parseFloat(t.toPrecision(14))}function D(t,e){$=p(t,e.animation)}function E(){var t=X.global.useUTC,e=t?"getUTC":"get",i=t?"setUTC":"set";q=6e4*(t&&X.global.timezoneOffset||0),V=t?Date.UTC:function(t,e,i,n,r,s){return new Date(t,e,p(i,1),p(n,0),p(r,0),p(s,0)).getTime()},U=e+"Minutes",Z=e+"Hours",K=e+"Day",Q=e+"Date",J=e+"Month",te=e+"FullYear",ee=i+"Minutes",ie=i+"Hours",ne=i+"Date",re=i+"Month",se=i+"FullYear"}function O(){}function R(t,e,i,n){this.axis=t,this.pos=e,this.type=i||"",this.isNew=!0,!i&&!n&&this.addLabel()}function z(){this.init.apply(this,arguments)}function B(t,e,i,n,r,s){var o=t.chart.inverted;this.axis=t,this.isNegative=i,this.options=e,this.x=n,this.total=null,this.points={},this.stack=r,this.percent="percent"===s,this.alignOptions={align:e.align||(o?i?"left":"right":"center"),verticalAlign:e.verticalAlign||(o?"middle":i?"bottom":"top"),y:p(e.y,o?4:i?14:-6),x:p(e.x,o?i?-6:6:0)},this.textAlign=e.textAlign||(o?i?"right":"left":"center")}function F(){this.init.apply(this,arguments)}function N(){this.init.apply(this,arguments)}var _,H,W,X,G,$,Y,j,V,q,U,Z,K,Q,J,te,ee,ie,ne,re,se,oe=document,ae=window,le=Math,he=le.round,ce=le.floor,de=le.ceil,ue=le.max,pe=le.min,fe=le.abs,ge=le.cos,me=le.sin,ye=le.PI,ve=2*ye/360,xe=navigator.userAgent,be=ae.opera,we=/msie/i.test(xe)&&!be,ke=8===oe.documentMode,Se=/AppleWebKit/.test(xe),Te=/Firefox/.test(xe),Ce=/(Mobile|Android|Windows Phone)/.test(xe),Pe="http://www.w3.org/2000/svg",Ae=!!oe.createElementNS&&!!oe.createElementNS(Pe,"svg").createSVGRect,Le=Te&&parseInt(xe.split("Firefox/")[1],10)<4,Me=!Ae&&!we&&!!oe.createElement("canvas").getContext,Ie=oe.documentElement.ontouchstart!==_,De={},Ee=0,Oe=function(){},Re=[],ze="div",Be="none",Fe=/^[0-9]+$/,Ne="rgba(192,192,192,"+(Ae?1e-4:.002)+")",_e="stroke-width",He={};ae.Highcharts=ae.Highcharts?M(16,!0):{},G=function(e,i,n){if(!c(i)||isNaN(i))return"Invalid date";var r,e=p(e,"%Y-%m-%d %H:%M:%S"),s=new Date(i-q),o=s[Z](),a=s[K](),l=s[Q](),h=s[J](),d=s[te](),u=X.lang,f=u.weekdays,s=t({a:f[a].substr(0,3),A:f[a],d:v(l),e:l,b:u.shortMonths[h],B:u.months[h],m:v(h+1),y:d.toString().substr(2,2),Y:d,H:v(o),I:v(o%12||12),l:o%12||12,M:v(s[U]()),p:12>o?"AM":"PM",P:12>o?"am":"pm",S:v(s.getSeconds()),L:v(he(i%1e3),3)},Highcharts.dateFormats);for(r in s)for(;-1!==e.indexOf("%"+r);)e=e.replace("%"+r,"function"==typeof s[r]?s[r](i):s[r]);return n?e.substr(0,1).toUpperCase()+e.substr(1):e},S.prototype={wrapColor:function(t){this.color>=t&&(this.color=0)},wrapSymbol:function(t){this.symbol>=t&&(this.symbol=0)}},j=function(){for(var t=0,e=arguments,i=e.length,n={};i>t;t++)n[e[t++]]=e[t];return n}("millisecond",1,"second",1e3,"minute",6e4,"hour",36e5,"day",864e5,"week",6048e5,"month",26784e5,"year",31556952e3),Y={init:function(t,e,i){var n,r,s,e=e||"",o=t.shift,a=e.indexOf("C")>-1,l=a?7:3,e=e.split(" "),i=[].concat(i),h=function(t){for(n=t.length;n--;)"M"===t[n]&&t.splice(n+1,0,t[n+1],t[n+2],t[n+1],t[n+2])};if(a&&(h(e),h(i)),t.isArea&&(r=e.splice(e.length-6,6),s=i.splice(i.length-6,6)),o<=i.length/l&&e.length===i.length)for(;o--;)i=[].concat(i).splice(0,l).concat(i);if(t.shift=0,e.length)for(t=i.length;e.lengthi)for(;s--;)n=parseFloat(t[s]),r[s]=isNaN(n)?t[s]:i*parseFloat(e[s]-n)+n;else r=e;return r}},function(e){ae.HighchartsAdapter=ae.HighchartsAdapter||e&&{init:function(t){var i,r=e.fx,s=r.step,o=e.Tween,a=o&&o.propHooks;i=e.cssHooks.opacity,e.extend(e.easing,{easeOutQuad:function(t,e,i,n,r){return-n*(e/=r)*(e-2)+i}}),e.each(["cur","_default","width","height","opacity"],function(t,e){var i,n=s;"cur"===e?n=r.prototype:"_default"===e&&o&&(n=a[e],e="set"),(i=n[e])&&(n[e]=function(n){var r,n=t?n:this;return"align"!==n.prop?(r=n.elem,r.attr?r.attr(n.prop,"cur"===e?_:n.now):i.apply(this,arguments)):void 0})}),x(i,"get",function(t,e,i){return e.attr?e.opacity||0:t.call(this,e,i)}),i=function(e){var i,n=e.elem;e.started||(i=t.init(n,n.d,n.toD),e.start=i[0],e.end=i[1],e.started=!0),n.attr("d",t.step(e.start,e.end,e.pos,n.toD))},o?a.d={set:i}:s.d=i,this.each=Array.prototype.forEach?function(t,e){return Array.prototype.forEach.call(t,e)}:function(t,e){for(var i=0,n=t.length;n>i;i++)if(e.call(t[i],t[i],i,t)===!1)return i},e.fn.highcharts=function(){var t,e,i="Chart",r=arguments;return n(r[0])&&(i=r[0],r=Array.prototype.slice.call(r,1)),t=r[0],t!==_&&(t.chart=t.chart||{},t.chart.renderTo=this[0],new Highcharts[i](t,r[1]),e=this),t===_&&(e=Re[d(this[0],"data-highcharts-chart")]),e}},getScript:e.getScript,inArray:e.inArray,adapterRun:function(t,i){return e(t)[i]()},grep:e.grep,map:function(t,e){for(var i=[],n=0,r=t.length;r>n;n++)i[n]=e.call(t[n],t[n],n,t);return i},offset:function(t){return e(t).offset()},addEvent:function(t,i,n){e(t).bind(i,n)},removeEvent:function(t,i,n){var r=oe.removeEventListener?"removeEventListener":"detachEvent";oe[r]&&t&&!t[r]&&(t[r]=function(){}),e(t).unbind(i,n)},fireEvent:function(i,n,r,s){var o,a=e.Event(n),l="detached"+n;!we&&r&&(delete r.layerX,delete r.layerY),t(a,r),i[n]&&(i[l]=i[n],i[n]=null),e.each(["preventDefault","stopPropagation"],function(t,e){var i=a[e];a[e]=function(){try{i.call(a)}catch(t){"preventDefault"===e&&(o=!0)}}}),e(i).trigger(a),i[l]&&(i[n]=i[l],i[l]=null),s&&!a.isDefaultPrevented()&&!o&&s(a)},washMouseEvent:function(t){var e=t.originalEvent||t;return e.pageX===_&&(e.pageX=t.pageX,e.pageY=t.pageY),e},animate:function(t,i,n){var r=e(t);t.style||(t.style={}),i.d&&(t.toD=i.d,i.d=1),r.stop(),i.opacity!==_&&t.attr&&(i.opacity+="px"),r.animate(i,n)},stop:function(t){e(t).stop()}}}(ae.jQuery);var We=ae.HighchartsAdapter,Xe=We||{};We&&We.init.call(We,Y);var Ge=Xe.adapterRun,$e=Xe.getScript,Ye=Xe.inArray,je=Xe.each,Ve=Xe.grep,qe=Xe.offset,Ue=Xe.map,Ze=Xe.addEvent,Ke=Xe.removeEvent,Qe=Xe.fireEvent,Je=Xe.washMouseEvent,ti=Xe.animate,ei=Xe.stop,Xe={enabled:!0,x:0,y:15,style:{color:"#666",cursor:"default",fontSize:"11px",lineHeight:"14px"}};X={colors:"#2f7ed8,#0d233a,#8bbc21,#910000,#1aadce,#492970,#f28f43,#77a1e5,#c42525,#a6c96a".split(","),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),decimalPoint:".",numericSymbols:"k,M,G,T,P,E".split(","),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:","},global:{useUTC:!0,canvasToolsURL:"http://code.highcharts.com/3.0.8/modules/canvas-tools.js",VMLRadialGradientURL:"http://code.highcharts.com/3.0.8/gfx/vml-radial-gradient.png"},chart:{borderColor:"#4572A7",borderRadius:5,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],style:{fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif',fontSize:"12px"},backgroundColor:"#FFFFFF",plotBorderColor:"#C0C0C0",resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}}},title:{text:"Chart title",align:"center",margin:15,style:{color:"#274b6d",fontSize:"16px"}},subtitle:{text:"",align:"center",style:{color:"#4d759e"}},plotOptions:{line:{allowPointSelect:!1,showCheckbox:!1,animation:{duration:1e3},events:{},lineWidth:2,marker:{enabled:!0,lineWidth:0,radius:4,lineColor:"#FFFFFF",states:{hover:{enabled:!0},select:{fillColor:"#FFFFFF",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:e(Xe,{align:"center",enabled:!1,formatter:function(){return null===this.y?"":y(this.y,-1)},verticalAlign:"bottom",y:0}),cropThreshold:300,pointRange:0,states:{hover:{marker:{}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1e3}},labels:{style:{position:"absolute",color:"#3E576F"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderWidth:1,borderColor:"#909090",borderRadius:5,navigation:{activeColor:"#274b6d",inactiveColor:"#CCC"},shadow:!1,itemStyle:{cursor:"pointer",color:"#274b6d",fontSize:"12px"},itemHoverStyle:{color:"#000"},itemHiddenStyle:{color:"#CCC"},itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"1em"},style:{position:"absolute",backgroundColor:"white",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:Ae,backgroundColor:"rgba(255, 255, 255, .85)",borderWidth:1,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},headerFormat:'{point.key}
    ',pointFormat:'{series.name}: {point.y}
    ',shadow:!0,snap:Ce?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"ThingSpeak.com",href:"https://thingspeak.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#D62020",fontSize:"9px"}}};var ii=X.plotOptions,We=ii.line;E();var ni=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,ri=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,si=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,oi=function(t){var n,r,s=[];return function(t){t&&t.stops?r=Ue(t.stops,function(t){return oi(t[1])}):(n=ni.exec(t))?s=[i(n[1]),i(n[2]),i(n[3]),parseFloat(n[4],10)]:(n=ri.exec(t))?s=[i(n[1],16),i(n[2],16),i(n[3],16),1]:(n=si.exec(t))&&(s=[i(n[1]),i(n[2]),i(n[3]),1])}(t),{get:function(i){var n;return r?(n=e(t),n.stops=[].concat(n.stops),je(r,function(t,e){n.stops[e]=[n.stops[e][0],t.get(i)]})):n=s&&!isNaN(s[0])?"rgb"===i?"rgb("+s[0]+","+s[1]+","+s[2]+")":"a"===i?s[3]:"rgba("+s.join(",")+")":t,n},brighten:function(t){if(r)je(r,function(e){e.brighten(t)});else if(o(t)&&0!==t){var e;for(e=0;3>e;e++)s[e]+=i(255*t),s[e]<0&&(s[e]=0),s[e]>255&&(s[e]=255)}return this},rgba:s,setOpacity:function(t){return s[3]=t,this}}};O.prototype={init:function(t,e){this.element="span"===e?g(e):oe.createElementNS(Pe,e),this.renderer=t,this.attrSetters={}},opacity:1,animate:function(t,i,n){i=p(i,$,!0),ei(this),i?(i=e(i),n&&(i.complete=n),ti(this,t,i)):(this.attr(t),n&&n())},attr:function(t,e){var r,s,o,a,l,h,u,f=this.element,g=f.nodeName.toLowerCase(),m=this.renderer,y=this.attrSetters,v=this.shadows,x=this;if(n(t)&&c(e)&&(r=t,t={},t[r]=e),n(t))r=t,"circle"===g?r={x:"cx",y:"cy"}[r]||r:"strokeWidth"===r&&(r="stroke-width"),x=d(f,r)||this[r]||0,"d"!==r&&"visibility"!==r&&"fill"!==r&&(x=parseFloat(x));else{for(r in t)if(l=!1,s=t[r],o=y[r]&&y[r].call(this,s,r),o!==!1){if(o!==_&&(s=o),"d"===r)s&&s.join&&(s=s.join(" ")),/(NaN| {2}|^$)/.test(s)&&(s="M 0 0");else if("x"===r&&"text"===g)for(o=0;os&&(s=0),this[r]=s,"text"===r?(s!==this.textStr&&delete this.bBox,this.textStr=s,this.added&&m.buildText(this)):l||d(f,r,s)}u&&this.updateTransform()}return x},addClass:function(t){var e=this.element,i=d(e,"class")||"";return-1===i.indexOf(t)&&d(e,"class",i+" "+t),this},symbolAttr:function(t){var e=this;je("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","),function(i){e[i]=p(t[i],e[i])}),e.attr({d:e.renderer.symbols[e.symbolName](e.x,e.y,e.width,e.height,e)})},clip:function(t){return this.attr("clip-path",t?"url("+this.renderer.url+"#"+t.id+")":Be)},crisp:function(t,e,i,n,r){var s,o,a={},l={},t=t||this.strokeWidth||this.attr&&this.attr("stroke-width")||0;o=he(t)%2/2,l.x=ce(e||this.x||0)+o,l.y=ce(i||this.y||0)+o,l.width=ce((n||this.width||0)-2*o),l.height=ce((r||this.height||0)-2*o),l.strokeWidth=t;for(s in l)this[s]!==l[s]&&(this[s]=a[s]=l[s]);return a},css:function(e){var n,r=this.element,s=this.textWidth=e&&e.width&&"text"===r.nodeName.toLowerCase()&&i(e.width),o="",a=function(t,e){return"-"+e.toLowerCase()};if(e&&e.color&&(e.fill=e.color),this.styles=e=t(this.styles,e),s&&delete e.width,we&&!Ae)f(this.element,e);else{for(n in e)o+=n.replace(/([A-Z])/g,a)+":"+e[n]+";";d(r,"style",o)}return s&&this.added&&this.renderer.buildText(this),this},on:function(t,e){var i=this,n=i.element;return Ie&&"click"===t?(n.ontouchstart=function(t){i.touchEventFired=Date.now(),t.preventDefault(),e.call(n,t)},n.onclick=function(t){(-1===xe.indexOf("Android")||Date.now()-(i.touchEventFired||0)>1100)&&e.call(n,t)}):n["on"+t]=e,this},setRadialReference:function(t){return this.element.radialReference=t,this},translate:function(t,e){return this.attr({translateX:t,translateY:e})},invert:function(){return this.inverted=!0,this.updateTransform(),this},updateTransform:function(){var t=this.translateX||0,e=this.translateY||0,i=this.scaleX,n=this.scaleY,r=this.inverted,s=this.rotation;r&&(t+=this.attr("width"),e+=this.attr("height")),t=["translate("+t+","+e+")"],r?t.push("rotate(90) scale(-1,1)"):s&&t.push("rotate("+s+" "+(this.x||0)+" "+(this.y||0)+")"),(c(i)||c(n))&&t.push("scale("+p(i,1)+" "+p(n,1)+")"),t.length&&d(this.element,"transform",t.join(" "))},toFront:function(){var t=this.element;return t.parentNode.appendChild(t),this},align:function(t,e,i){var r,s,o,a,l={};return s=this.renderer,o=s.alignedObjects,t?(this.alignOptions=t,this.alignByTranslate=e,(!i||n(i))&&(this.alignTo=r=i||"renderer",h(o,this),o.push(this),i=null)):(t=this.alignOptions,e=this.alignByTranslate,r=this.alignTo),i=p(i,s[r],s),r=t.align,s=t.verticalAlign,o=(i.x||0)+(t.x||0),a=(i.y||0)+(t.y||0),("right"===r||"center"===r)&&(o+=(i.width-(t.width||0))/{right:1,center:2}[r]),l[e?"translateX":"x"]=he(o),("bottom"===s||"middle"===s)&&(a+=(i.height-(t.height||0))/({bottom:1,middle:2}[s]||1)),l[e?"translateY":"y"]=he(a),this[this.placed?"animate":"attr"](l),this.placed=!0,this.alignAttr=l,this},getBBox:function(){var e,i,n=this.bBox,r=this.renderer,s=this.rotation;e=this.element;var o=this.styles,a=s*ve;i=this.textStr;var l;if((""===i||Fe.test(i))&&(l=i.length+"|"+o.fontSize+"|"+o.fontFamily,n=r.cache[l]),!n){if(e.namespaceURI===Pe||r.forExport){try{n=e.getBBox?t({},e.getBBox()):{width:e.offsetWidth,height:e.offsetHeight}}catch(h){}(!n||n.width<0)&&(n={width:0,height:0})}else n=this.htmlGetBBox();r.isSVG&&(e=n.width,i=n.height,we&&o&&"11px"===o.fontSize&&"22.7"===i.toPrecision(3)&&(n.height=i=14),s&&(n.width=fe(i*me(a))+fe(e*ge(a)),n.height=fe(i*ge(a))+fe(e*me(a)))),this.bBox=n,l&&(r.cache[l]=n)}return n},show:function(){return this.attr({visibility:"visible"})},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(t){var e=this;e.animate({opacity:0},{duration:t||150,complete:function(){e.hide()}})},add:function(t){var e,n=this.renderer,r=t||n,s=r.element||n.box,o=s.childNodes,a=this.element,l=d(a,"zIndex");if(t&&(this.parentGroup=t),this.parentInverted=t&&t.inverted,void 0!==this.textStr&&n.buildText(this),l&&(r.handleZ=!0,l=i(l)),r.handleZ)for(r=0;rl||!c(l)&&c(n))){s.insertBefore(a,t),e=!0;break}return e||s.appendChild(a),this.added=!0,Qe(this,"add"),this},safeRemoveChild:function(t){var e=t.parentNode;e&&e.removeChild(t)},destroy:function(){var t,e,i=this,n=i.element||{},r=i.shadows,s=i.renderer.isSVG&&"SPAN"===n.nodeName&&i.parentGroup;if(n.onclick=n.onmouseout=n.onmouseover=n.onmousemove=n.point=null,ei(i),i.clipPath&&(i.clipPath=i.clipPath.destroy()),i.stops){for(e=0;e=n;n++)r=c.cloneNode(0),s=2*o+1-2*n,d(r,{isShadow:"true",stroke:t.color||"black","stroke-opacity":a*n,"stroke-width":s,transform:"translate"+l,fill:Be}),i&&(d(r,"height",ue(d(r,"height")-s,0)),r.cutHeight=s),e?e.element.appendChild(r):c.parentNode.insertBefore(r,c),h.push(r);this.shadows=h}return this}};var ai=function(){this.init.apply(this,arguments)};ai.prototype={Element:O,init:function(t,e,i,n){var r,s,o=location;r=this.createElement("svg").attr({version:"1.1"}),s=r.element,t.appendChild(s),-1===t.innerHTML.indexOf("xmlns")&&d(s,"xmlns",Pe),this.isSVG=!0,this.box=s,this.boxWrapper=r,this.alignedObjects=[],this.url=(Te||Se)&&oe.getElementsByTagName("base").length?o.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"",this.createElement("desc").add().element.appendChild(oe.createTextNode("Created with Highcharts 3.0.8")),this.defs=this.createElement("defs").add(),this.forExport=n,this.gradients={},this.cache={},this.setSize(e,i,!1);var a;Te&&t.getBoundingClientRect&&(this.subPixelFix=e=function(){f(t,{left:0,top:0}),a=t.getBoundingClientRect(),f(t,{left:de(a.left)-a.left+"px",top:de(a.top)-a.top+"px"})},e(),Ze(ae,"resize",e))},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var t=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),A(this.gradients||{}),this.gradients=null,t&&(this.defs=t.destroy()),this.subPixelFix&&Ke(ae,"resize",this.subPixelFix),this.alignedObjects=null},createElement:function(t){var e=new this.Element;return e.init(this,t),e},draw:function(){},buildText:function(t){for(var e=t.element,n=this,r=n.forExport,s=p(t.textStr,"").toString().replace(/<(b|strong)>/g,'').replace(/<(i|em)>/g,'').replace(/
    /g,"").split(//g),o=e.childNodes,a=/style="([^"]+)"/,l=/href="(http[^"]+)"/,h=d(e,"x"),c=t.styles,u=t.textWidth,g=c&&c.lineHeight,m=o.length;m--;)e.removeChild(o[m]); +u&&!t.added&&this.box.appendChild(e),""===s[s.length-1]&&s.pop(),je(s,function(s,o){var p,m=0,s=s.replace(//g,"|||");p=s.split("|||"),je(p,function(s){if(""!==s||1===p.length){var y,v={},x=oe.createElementNS(Pe,"tspan");if(a.test(s)&&(y=s.match(a)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),d(x,"style",y)),l.test(s)&&!r&&(d(x,"onclick",'location.href="'+s.match(l)[1]+'"'),f(x,{cursor:"pointer"})),s=(s.replace(/<(.|\n)*?>/g,"")||" ").replace(/</g,"<").replace(/>/g,">")," "!==s&&(x.appendChild(oe.createTextNode(s)),m?v.dx=0:v.x=h,d(x,v),!m&&o&&(!Ae&&r&&f(x,{display:"block"}),d(x,"dy",g||n.fontMetrics(/px$/.test(x.style.fontSize)?x.style.fontSize:c.fontSize).h,Se&&x.offsetHeight)),e.appendChild(x),m++,u))for(var b,w,s=s.replace(/([^\^])-/g,"$1- ").split(" "),v=s.length>1&&"nowrap"!==c.whiteSpace,k=t._clipHeight,S=[],T=i(g||16),C=1;v&&(s.length||S.length);)delete t.bBox,b=t.getBBox(),w=b.width,!Ae&&n.forExport&&(w=n.measureSpanWidth(x.firstChild.data,t.styles)),b=w>u,b&&1!==s.length?(x.removeChild(x.firstChild),S.unshift(s.pop())):(s=S,S=[],s.length&&(C++,k&&C*T>k?(s=["..."],t.attr("title",t.textStr)):(x=oe.createElementNS(Pe,"tspan"),d(x,{dy:T,x:h}),y&&d(x,"style",y),e.appendChild(x),w>u&&(u=w)))),s.length&&x.appendChild(oe.createTextNode(s.join(" ").replace(/- /g,"-")))}})})},button:function(i,n,r,s,o,a,l,h,c){var d,u,p,f,g,m,y=this.label(i,n,r,c,null,null,null,null,"button"),v=0,i={x1:0,y1:0,x2:0,y2:1},o=e({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:i,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},o);return p=o.style,delete o.style,a=e(o,{stroke:"#68A",fill:{linearGradient:i,stops:[[0,"#FFF"],[1,"#ACF"]]}},a),f=a.style,delete a.style,l=e(o,{stroke:"#68A",fill:{linearGradient:i,stops:[[0,"#9BD"],[1,"#CDF"]]}},l),g=l.style,delete l.style,h=e(o,{style:{color:"#CCC"}},h),m=h.style,delete h.style,Ze(y.element,we?"mouseover":"mouseenter",function(){3!==v&&y.attr(a).css(f)}),Ze(y.element,we?"mouseout":"mouseleave",function(){3!==v&&(d=[o,a,l][v],u=[p,f,g][v],y.attr(d).css(u))}),y.setState=function(t){(y.state=v=t)?2===t?y.attr(l).css(g):3===t&&y.attr(h).css(m):y.attr(o).css(p)},y.on("click",function(){3!==v&&s.call(y)}).attr(o).css(t({cursor:"default"},p))},crispLine:function(t,e){return t[1]===t[4]&&(t[1]=t[4]=he(t[1])-e%2/2),t[2]===t[5]&&(t[2]=t[5]=he(t[2])+e%2/2),t},path:function(e){var i={fill:Be};return s(e)?i.d=e:r(e)&&t(i,e),this.createElement("path").attr(i)},circle:function(t,e,i){return t=r(t)?t:{x:t,y:e,r:i},this.createElement("circle").attr(t)},arc:function(t,e,i,n,s,o){return r(t)&&(e=t.y,i=t.r,n=t.innerR,s=t.start,o=t.end,t=t.x),t=this.symbol("arc",t||0,e||0,i||0,i||0,{innerR:n||0,start:s||0,end:o||0}),t.r=i,t},rect:function(t,e,i,n,s,o){return s=r(t)?t.r:s,s=this.createElement("rect").attr({rx:s,ry:s,fill:Be}),s.attr(r(t)?t:s.crisp(o,t,e,ue(i,0),ue(n,0)))},setSize:function(t,e,i){var n=this.alignedObjects,r=n.length;for(this.width=t,this.height=e,this.boxWrapper[p(i,!0)?"animate":"attr"]({width:t,height:e});r--;)n[r].align()},g:function(t){var e=this.createElement("g");return c(t)?e.attr({"class":"highcharts-"+t}):e},image:function(e,i,n,r,s){var o={preserveAspectRatio:Be};return arguments.length>1&&t(o,{x:i,y:n,width:r,height:s}),o=this.createElement("image").attr(o),o.element.setAttributeNS?o.element.setAttributeNS("http://www.w3.org/1999/xlink","href",e):o.element.setAttribute("hc-svg-href",e),o},symbol:function(e,i,n,r,s,o){var a,l,h,c=this.symbols[e],c=c&&c(he(i),he(n),r,s,o),d=/^url\((.*?)\)$/;return c?(a=this.path(c),t(a,{symbolName:e,x:i,y:n,width:r,height:s}),o&&t(a,o)):d.test(e)&&(h=function(t,e){t.element&&(t.attr({width:e[0],height:e[1]}),t.alignByTranslate||t.translate(he((r-e[0])/2),he((s-e[1])/2)))},l=e.match(d)[1],e=De[l],a=this.image(l).attr({x:i,y:n}),a.isImg=!0,e?h(a,e):(a.attr({width:0,height:0}),g("img",{onload:function(){h(a,De[l]=[this.width,this.height])},src:l}))),a},symbols:{circle:function(t,e,i,n){var r=.166*i;return["M",t+i/2,e,"C",t+i+r,e,t+i+r,e+n,t+i/2,e+n,"C",t-r,e+n,t-r,e,t+i/2,e,"Z"]},square:function(t,e,i,n){return["M",t,e,"L",t+i,e,t+i,e+n,t,e+n,"Z"]},triangle:function(t,e,i,n){return["M",t+i/2,e,"L",t+i,e+n,t,e+n,"Z"]},"triangle-down":function(t,e,i,n){return["M",t,e,"L",t+i,e,t+i/2,e+n,"Z"]},diamond:function(t,e,i,n){return["M",t+i/2,e,"L",t+i,e+n/2,t+i/2,e+n,t,e+n/2,"Z"]},arc:function(t,e,i,n,r){var s=r.start,i=r.r||i||n,o=r.end-.001,n=r.innerR,a=r.open,l=ge(s),h=me(s),c=ge(o),o=me(o),r=r.end-st?t+4:he(1.2*t),e=he(.8*t);return{h:t,b:e}},label:function(i,n,r,s,o,a,l,h,d){function u(){var t,i;t=P.element.style,y=(void 0===v||void 0===x||C.styles.textAlign)&&P.getBBox(),C.width=(v||y.width||0)+2*L+M,C.height=(x||y.height||0)+2*L,k=L+T.fontMetrics(t&&t.fontSize).b,S&&(m||(t=he(-A*L),i=h?-k:0,C.box=m=s?T.symbol(s,t,i,C.width,C.height,D):T.rect(t,i,C.width,C.height,0,D[_e]),m.add(C)),m.isImg||m.attr(e({width:C.width,height:C.height},D)),D=null)}function p(){var t,e=C.styles,e=e&&e.textAlign,i=M+L*(1-A);t=h?0:k,!c(v)||"center"!==e&&"right"!==e||(i+={center:.5,right:1}[e]*(v-y.width)),(i!==P.x||t!==P.y)&&P.attr({x:i,y:t}),P.x=i,P.y=t}function f(t,e){m?m.attr(t,e):D[t]=e}function g(){P.add(C),C.attr({text:i,x:n,y:r}),m&&c(o)&&C.attr({anchorX:o,anchorY:a})}var m,y,v,x,b,w,k,S,T=this,C=T.g(d),P=T.text("",0,0,l).attr({zIndex:1}),A=0,L=3,M=0,I=0,D={},l=C.attrSetters;Ze(C,"add",g),l.width=function(t){return v=t,!1},l.height=function(t){return x=t,!1},l.padding=function(t){return c(t)&&t!==L&&(L=t,p()),!1},l.paddingLeft=function(t){return c(t)&&t!==M&&(M=t,p()),!1},l.align=function(t){return A={left:0,center:.5,right:1}[t],!1},l.text=function(t,e){return P.attr(e,t),u(),p(),!1},l[_e]=function(t,e){return S=!0,I=t%2/2,f(e,t),!1},l.stroke=l.fill=l.r=function(t,e){return"fill"===e&&(S=!0),f(e,t),!1},l.anchorX=function(t,e){return o=t,f(e,t+I-b),!1},l.anchorY=function(t,e){return a=t,f(e,t-w),!1},l.x=function(t){return C.x=t,t-=A*((v||y.width)+L),b=he(t),C.attr("translateX",b),!1},l.y=function(t){return w=C.y=he(t),C.attr("translateY",w),!1};var E=C.css;return t(C,{css:function(t){if(t){var i={},t=e(t);je("fontSize,fontWeight,fontFamily,color,lineHeight,width,textDecoration,textShadow".split(","),function(e){t[e]!==_&&(i[e]=t[e],delete t[e])}),P.css(i)}return E.call(C,t)},getBBox:function(){return{width:y.width+2*L,height:y.height+2*L,x:y.x-L,y:y.y-L}},shadow:function(t){return m&&m.shadow(t),C},destroy:function(){Ke(C,"add",g),Ke(C.element,"mouseenter"),Ke(C.element,"mouseleave"),P&&(P=P.destroy()),m&&(m=m.destroy()),O.prototype.destroy.call(C),C=T=u=p=f=g=null}})}},H=ai,t(O.prototype,{htmlCss:function(e){var i=this.element;return(i=e&&"SPAN"===i.tagName&&e.width)&&(delete e.width,this.textWidth=i,this.updateTransform()),this.styles=t(this.styles,e),f(this.element,e),this},htmlGetBBox:function(){var t=this.element,e=this.bBox;return e||("text"===t.nodeName&&(t.style.position="absolute"),e=this.bBox={x:t.offsetLeft,y:t.offsetTop,width:t.offsetWidth,height:t.offsetHeight}),e},htmlUpdateTransform:function(){if(this.added){var t=this.renderer,e=this.element,n=this.translateX||0,r=this.translateY||0,s=this.x||0,o=this.y||0,a=this.textAlign||"left",l={left:0,center:.5,right:1}[a],h=this.shadows;if(f(e,{marginLeft:n,marginTop:r}),h&&je(h,function(t){f(t,{marginLeft:n+1,marginTop:r+1})}),this.inverted&&je(e.childNodes,function(i){t.invertChild(i,e)}),"SPAN"===e.tagName){var d,u=this.rotation,g=i(this.textWidth),m=[u,a,e.innerHTML,this.textWidth].join(",");m!==this.cTT&&(d=t.fontMetrics(e.style.fontSize).b,c(u)&&this.setSpanRotation(u,l,d),h=p(this.elemWidth,e.offsetWidth),h>g&&/[ \-]/.test(e.textContent||e.innerText)&&(f(e,{width:g+"px",display:"block",whiteSpace:"normal"}),h=g),this.getSpanCorrection(h,d,l,u,a)),f(e,{left:s+(this.xCorr||0)+"px",top:o+(this.yCorr||0)+"px"}),Se&&(d=e.offsetHeight),this.cTT=m}}else this.alignOnAdd=!0},setSpanRotation:function(t,e,i){var n={},r=we?"-ms-transform":Se?"-webkit-transform":Te?"MozTransform":be?"-o-transform":"";n[r]=n.transform="rotate("+t+"deg)",n[r+(Te?"Origin":"-origin")]=100*e+"% "+i+"px",f(this.element,n)},getSpanCorrection:function(t,e,i){this.xCorr=-t*i,this.yCorr=-e}}),t(ai.prototype,{html:function(e,i,n){var r=X.chart.style,s=this.createElement("span"),o=s.attrSetters,a=s.element,l=s.renderer;return o.text=function(t){return t!==a.innerHTML&&delete this.bBox,a.innerHTML=t,!1},o.x=o.y=o.align=o.rotation=function(t,e){return"align"===e&&(e="textAlign"),s[e]=t,s.htmlUpdateTransform(),!1},s.attr({text:e,x:he(i),y:he(n)}).css({position:"absolute",whiteSpace:"nowrap",fontFamily:r.fontFamily,fontSize:r.fontSize}),s.css=s.htmlCss,l.isSVG&&(s.add=function(e){var i,n=l.box.parentNode,r=[];if(this.parentGroup=e){if(i=e.div,!i){for(;e;)r.push(e),e=e.parentGroup;je(r.reverse(),function(e){var r;i=e.div=e.div||g(ze,{className:d(e.element,"class")},{position:"absolute",left:(e.translateX||0)+"px",top:(e.translateY||0)+"px"},i||n),r=i.style,t(e.attrSetters,{translateX:function(t){r.left=t+"px"},translateY:function(t){r.top=t+"px"},visibility:function(t,e){r[e]=t}})})}}else i=n;return i.appendChild(a),s.added=!0,s.alignOnAdd&&s.htmlUpdateTransform(),s}),s}});var li;if(!Ae&&!Me){Highcharts.VMLElement=li={init:function(t,e){var i=["<",e,' filled="f" stroked="f"'],n=["position: ","absolute",";"],r=e===ze;("shape"===e||r)&&n.push("left:0;top:0;width:1px;height:1px;"),n.push("visibility: ",r?"hidden":"visible"),i.push(' style="',n.join(""),'"/>'),e&&(i=r||"span"===e||"img"===e?i.join(""):t.prepVML(i),this.element=g(i)),this.renderer=t,this.attrSetters={}},add:function(t){var e=this.renderer,i=this.element,n=e.box,n=t?t.element||t:n;return t&&t.inverted&&e.invertChild(i,n),n.appendChild(i),this.added=!0,this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform(),Qe(this,"add"),this},updateTransform:O.prototype.htmlUpdateTransform,setSpanRotation:function(){var t=this.rotation,e=ge(t*ve),i=me(t*ve);f(this.element,{filter:t?["progid:DXImageTransform.Microsoft.Matrix(M11=",e,", M12=",-i,", M21=",i,", M22=",e,", sizingMethod='auto expand')"].join(""):Be})},getSpanCorrection:function(t,e,i,n,r){var s,o=n?ge(n*ve):1,a=n?me(n*ve):0,l=p(this.elemHeight,this.element.offsetHeight);this.xCorr=0>o&&-t,this.yCorr=0>a&&-l,s=0>o*a,this.xCorr+=a*e*(s?1-i:i),this.yCorr-=o*e*(n?s?i:1-i:1),r&&"left"!==r&&(this.xCorr-=t*i*(0>o?-1:1),n&&(this.yCorr-=l*i*(0>a?-1:1)),f(this.element,{textAlign:r}))},pathToVML:function(t){for(var e=t.length,i=[];e--;)o(t[e])?i[e]=he(10*t[e])-5:"Z"===t[e]?i[e]="x":(i[e]=t[e],!t.isArc||"wa"!==t[e]&&"at"!==t[e]||(i[e+5]===i[e+7]&&(i[e+7]+=t[e+7]>t[e+5]?1:-1),i[e+6]===i[e+8]&&(i[e+8]+=t[e+8]>t[e+6]?1:-1)));return i.join(" ")||"x"},attr:function(t,e){var i,r,s,a,l,h=this.element||{},u=h.style,p=h.nodeName,f=this.renderer,m=this.symbolName,y=this.shadows,v=this.attrSetters,x=this;if(n(t)&&c(e)&&(i=t,t={},t[i]=e),n(t))i=t,x="strokeWidth"===i||"stroke-width"===i?this.strokeweight:this[i];else for(i in t)if(r=t[i],l=!1,s=v[i]&&v[i].call(this,r,i),s!==!1&&null!==r){if(s!==_&&(r=s),m&&/^(x|y|r|start|end|width|height|innerR|anchorX|anchorY)/.test(i))a||(this.symbolAttr(t),a=!0),l=!0;else if("d"===i){if(r=r||[],this.d=r.join(" "),h.path=r=this.pathToVML(r),y)for(s=y.length;s--;)y[s].path=y[s].cutOff?this.cutOffPath(r,y[s].cutOff):r;l=!0}else if("visibility"===i){if(y)for(s=y.length;s--;)y[s].style[i]=r;"DIV"===p&&(r="hidden"===r?"-999em":0,ke||(u[i]=r?"visible":"hidden"),i="top"),u[i]=r,l=!0}else"zIndex"===i?(r&&(u[i]=r),l=!0):-1!==Ye(i,["x","y","width","height"])?(this[i]=r,"x"===i||"y"===i?i={x:"left",y:"top"}[i]:r=ue(0,r),this.updateClipping?(this[i]=r,this.updateClipping()):u[i]=r,l=!0):"class"===i&&"DIV"===p?h.className=r:"stroke"===i?(r=f.color(r,h,i),i="strokecolor"):"stroke-width"===i||"strokeWidth"===i?(h.stroked=r?!0:!1,i="strokeweight",this[i]=r,o(r)&&(r+="px")):"dashstyle"===i?((h.getElementsByTagName("stroke")[0]||g(f.prepVML([""]),null,null,h))[i]=r||"solid",this.dashstyle=r,l=!0):"fill"===i?"SPAN"===p?u.color=r:"IMG"!==p&&(h.filled=r!==Be?!0:!1,r=f.color(r,h,i,this),i="fillcolor"):"opacity"===i?l=!0:"shape"===p&&"rotation"===i?(this[i]=h.style[i]=r,h.style.left=-he(me(r*ve)+1)+"px",h.style.top=he(ge(r*ve))+"px"):("translateX"===i||"translateY"===i||"rotation"===i)&&(this[i]=r,this.updateTransform(),l=!0);l||(ke?h[i]=r:d(h,i,r))}return x},clip:function(t){var e,i=this;return t?(e=t.members,h(e,i),e.push(i),i.destroyClip=function(){h(e,i)},t=t.getCSS(i)):(i.destroyClip&&i.destroyClip(),t={clip:ke?"inherit":"rect(auto)"}),i.css(t)},css:O.prototype.htmlCss,safeRemoveChild:function(t){t.parentNode&&L(t)},destroy:function(){return this.destroyClip&&this.destroyClip(),O.prototype.destroy.apply(this)},on:function(t,e){return this.element["on"+t]=function(){var t=ae.event;t.target=t.srcElement,e(t)},this},cutOffPath:function(t,e){var n,t=t.split(/[ ,]/);return n=t.length,(9===n||11===n)&&(t[n-4]=t[n-2]=i(t[n-2])-10*e),t.join(" ")},shadow:function(t,e,n){var r,s,o,a,l,h,c,d=[],u=this.element,f=this.renderer,m=u.style,y=u.path;if(y&&"string"!=typeof y.value&&(y="x"),l=y,t){for(h=p(t.width,3),c=(t.opacity||.15)/h,r=1;3>=r;r++)a=2*h+1-2*r,n&&(l=this.cutOffPath(y.value,a+.5)),o=[''],s=g(f.prepVML(o),null,{left:i(m.left)+p(t.offsetX,1),top:i(m.top)+p(t.offsetY,1)}),n&&(s.cutOff=a+1),o=[''],g(f.prepVML(o),null,null,s),e?e.element.appendChild(s):u.parentNode.insertBefore(s,u),d.push(s);this.shadows=d}return this}},li=m(O,li);var hi={Element:li,isIE8:xe.indexOf("MSIE 8.0")>-1,init:function(t,e,i){var n,r;if(this.alignedObjects=[],n=this.createElement(ze),r=n.element,r.style.position="relative",t.appendChild(n.element),this.isVML=!0,this.box=r,this.boxWrapper=n,this.cache={},this.setSize(e,i,!1),!oe.namespaces.hcv){oe.namespaces.add("hcv","urn:schemas-microsoft-com:vml");try{oe.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}catch(s){oe.styleSheets[0].cssText+="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}}},isHidden:function(){return!this.box.offsetWidth},clipRect:function(e,i,n,s){var o=this.createElement(),a=r(e);return t(o,{members:[],left:(a?e.x:e)+1,top:(a?e.y:i)+1,width:(a?e.width:n)-1,height:(a?e.height:s)-1,getCSS:function(e){var i=e.element,n=i.nodeName,e=e.inverted,r=this.top-("shape"===n?i.offsetTop:0),s=this.left,i=s+this.width,o=r+this.height,r={clip:"rect("+he(e?s:r)+"px,"+he(e?o:i)+"px,"+he(e?i:o)+"px,"+he(e?r:s)+"px)"};return!e&&ke&&"DIV"===n&&t(r,{width:i+"px",height:o+"px"}),r},updateClipping:function(){je(o.members,function(t){t.css(o.getCSS(t))})}})},color:function(t,e,i,n){var r,s,o,a=this,l=/^rgba/,h=Be;if(t&&t.linearGradient?o="gradient":t&&t.radialGradient&&(o="pattern"),o){var c,d,u,p,f,m,y,v,x=t.linearGradient||t.radialGradient,b="",t=t.stops,w=[],k=function(){s=[''],g(a.prepVML(s),null,null,e)};if(u=t[0],v=t[t.length-1],u[0]>0&&t.unshift([0,u[1]]),v[0]<1&&t.push([1,v[1]]),je(t,function(t,e){l.test(t[1])?(r=oi(t[1]),c=r.get("rgb"),d=r.get("a")):(c=t[1],d=1),w.push(100*t[0]+"% "+c),e?(f=d,m=c):(p=d,y=c)}),"fill"===i)if("gradient"===o)i=x.x1||x[0]||0,t=x.y1||x[1]||0,u=x.x2||x[2]||0,x=x.y2||x[3]||0,b='angle="'+(90-180*le.atan((x-t)/(u-i))/ye)+'"',k();else{var S,h=x.r,T=2*h,C=2*h,P=x.cx,A=x.cy,L=e.radialReference,h=function(){L&&(S=n.getBBox(),P+=(L[0]-S.x)/S.width-.5,A+=(L[1]-S.y)/S.height-.5,T*=L[2]/S.width,C*=L[2]/S.height),b='src="'+X.global.VMLRadialGradientURL+'" size="'+T+","+C+'" origin="0.5,0.5" position="'+P+","+A+'" color2="'+y+'" ',k()};n.added?h():Ze(n,"add",h),h=m}else h=c}else l.test(t)&&"IMG"!==e.tagName?(r=oi(t),s=["<",i,' opacity="',r.get("a"),'"/>'],g(this.prepVML(s),null,null,e),h=r.get("rgb")):(h=e.getElementsByTagName(i),h.length&&(h[0].opacity=1,h[0].type="solid"),h=t);return h},prepVML:function(t){var e=this.isIE8,t=t.join("");return e?(t=t.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),t=-1===t.indexOf('style="')?t.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'):t.replace('style="','style="display:inline-block;behavior:url(#default#VML);')):t=t.replace("<","1&&s.attr({x:e,y:i,width:n,height:r}),s},rect:function(t,e,i,n,s,o){var a=this.symbol("rect");return a.r=r(t)?t.r:s,a.attr(r(t)?t:a.crisp(o,t,e,ue(i,0),ue(n,0)))},invertChild:function(t,e){var n=e.style;f(t,{flip:"x",left:i(n.width)-1,top:i(n.height)-1,rotation:-90})},symbols:{arc:function(t,e,i,n,r){var s=r.start,o=r.end,a=r.r||i||n,i=r.innerR,n=ge(s),l=me(s),h=ge(o),c=me(o);return o-s===0?["x"]:(s=["wa",t-a,e-a,t+a,e+a,t+a*n,e+a*l,t+a*h,e+a*c],r.open&&!i&&s.push("e","M",t,e),s.push("at",t-i,e-i,t+i,e+i,t+i*h,e+i*c,t+i*n,e+i*l,"x","e"),s.isArc=!0,s)},circle:function(t,e,i,n,r){return r&&(i=n=2*r.r),r&&r.isCircle&&(t-=i/2,e-=n/2),["wa",t,e,t+i,e+n,t+i,e+n/2,t+i,e+n/2,"e"]},rect:function(t,e,i,n,r){var s,o=t+i,a=e+n;return c(r)&&r.r?(s=pe(r.r,i,n),o=["M",t+s,e,"L",o-s,e,"wa",o-2*s,e,o,e+2*s,o-s,e,o,e+s,"L",o,a-s,"wa",o-2*s,a-2*s,o,a,o,a-s,o-s,a,"L",t+s,a,"wa",t,a-2*s,t+2*s,a,t+s,a,t,a-s,"L",t,e+s,"wa",t,e,t+2*s,e+2*s,t,e+s,t+s,e,"x","e"]):o=ai.prototype.symbols.square.apply(0,arguments),o}}};Highcharts.VMLRenderer=li=function(){this.init.apply(this,arguments)},li.prototype=e(ai.prototype,hi),H=li}ai.prototype.measureSpanWidth=function(t,e){var i,n=oe.createElement("span");return i=oe.createTextNode(t),n.appendChild(i),f(n,e),this.box.appendChild(n),i=n.offsetWidth,L(n),i};var ci;Me&&(Highcharts.CanVGRenderer=li=function(){Pe="http://www.w3.org/1999/xhtml"},li.prototype.symbols={},ci=function(){function t(){var t,i=e.length;for(t=0;i>t;t++)e[t]();e=[]}var e=[];return{push:function(i,n){0===e.length&&$e(n,t),e.push(i)}}}(),H=li),R.prototype={addLabel:function(){var e,i=this.axis,n=i.options,r=i.chart,s=i.horiz,a=i.categories,h=i.names,d=this.pos,u=n.labels,f=i.tickPositions,s=s&&a&&!u.step&&!u.staggerLines&&!u.rotation&&r.plotWidth/f.length||!s&&(r.margin[3]||.33*r.chartWidth),g=d===f[0],m=d===f[f.length-1],h=a?p(a[d],h[d],d):d,a=this.label,y=f.info;i.isDatetimeAxis&&y&&(e=n.dateTimeLabelFormats[y.higherRanks[d]||y.unitName]),this.isFirst=g,this.isLast=m,n=i.labelFormatter.call({axis:i,chart:r,isFirst:g,isLast:m,dateTimeLabelFormat:e,value:i.isLog?I(l(h)):h}),d=s&&{width:ue(1,he(s-2*(u.padding||10)))+"px"},d=t(d,u.style),c(a)?a&&a.attr({text:n}).css(d):(e={align:i.labelAlign},o(u.rotation)&&(e.rotation=u.rotation),s&&u.ellipsis&&(e._clipHeight=i.len/f.length),this.label=c(n)&&u.enabled?r.renderer.text(n,0,0,u.useHTML).attr(e).css(d).add(i.labelGroup):null)},getLabelSize:function(){var t=this.label,e=this.axis;return t?t.getBBox()[e.horiz?"height":"width"]:0},getLabelSides:function(){var t=this.label.getBBox(),e=this.axis,i=e.horiz,n=e.options.labels,t=i?t.width:t.height,e=i?t*{left:0,center:.5,right:1}[e.labelAlign]-n.x:t;return[-e,t-e]},handleOverflow:function(t,e){var i,n=!0,r=this.axis,s=this.isFirst,o=this.isLast,a=r.horiz?e.x:e.y,l=r.reversed,h=r.tickPositions,c=this.getLabelSides(),d=c[0],c=c[1],u=r.pos,p=u+r.len,f=this.label.line||0,g=r.labelEdge,m=r.justifyLabels&&(s||o);return g[f]===_||a+d>g[f]?g[f]=a+c:m||(n=!1),m&&(i=(r=r.ticks[h[t+(s?1:-1)]])&&r.label.xy&&r.label.xy.x+r.getLabelSides()[s?0:1],h=i,s&&!l||o&&l?u>a+d&&(a=u-d,r&&a+c>h&&(n=!1)):a+c>p&&(a=p-c,r&&h>a+d&&(n=!1)),e.x=a),n},getPosition:function(t,e,i,n){var r=this.axis,s=r.chart,o=n&&s.oldChartHeight||s.chartHeight;return{x:t?r.translate(e+i,null,null,n)+r.transB:r.left+r.offset+(r.opposite?(n&&s.oldChartWidth||s.chartWidth)-r.right-r.left:0),y:t?o-r.bottom+r.offset-(r.opposite?r.height:0):o-r.translate(e+i,null,null,n)-r.transB}},getLabelPosition:function(t,e,i,n,r,s,o,a){var l=this.axis,h=l.transA,d=l.reversed,u=l.staggerLines,p=l.chart.renderer.fontMetrics(r.style.fontSize).b,f=r.rotation,t=t+r.x-(s&&n?s*h*(d?-1:1):0),e=e+r.y-(s&&!n?s*h*(d?1:-1):0);return f&&2===l.side&&(e-=p-p*ge(f*ve)),!c(r.y)&&!f&&(e+=p-i.getBBox().height/2),u&&(i.line=o/(a||1)%u,e+=i.line*(l.labelOffset/u)),{x:t,y:e}},getMarkPath:function(t,e,i,n,r,s){return s.crispLine(["M",t,e,"L",t+(r?0:-i),e+(r?i:0)],n)},render:function(t,e,i){var n=this.axis,r=n.options,s=n.chart.renderer,o=n.horiz,a=this.type,l=this.label,h=this.pos,c=r.labels,d=this.gridLine,u=a?a+"Grid":"grid",f=a?a+"Tick":"tick",g=r[u+"LineWidth"],m=r[u+"LineColor"],y=r[u+"LineDashStyle"],v=r[f+"Length"],u=r[f+"Width"]||0,x=r[f+"Color"],b=r[f+"Position"],f=this.mark,w=c.step,k=!0,S=n.tickmarkOffset,T=this.getPosition(o,h,S,e),C=T.x,T=T.y,P=o&&C===n.pos+n.len||!o&&T===n.pos?-1:1;this.isActive=!0,g&&(h=n.getPlotLinePath(h+S,g*P,e,!0),d===_&&(d={stroke:m,"stroke-width":g},y&&(d.dashstyle=y),a||(d.zIndex=1),e&&(d.opacity=0),this.gridLine=d=g?s.path(h).attr(d).add(n.gridGroup):null),!e&&d&&h&&d[this.isNew?"attr":"animate"]({d:h,opacity:i})),u&&v&&("inside"===b&&(v=-v),n.opposite&&(v=-v),a=this.getMarkPath(C,T,v,u*P,o,s),f?f.animate({d:a,opacity:i}):this.mark=s.path(a).attr({stroke:x,"stroke-width":u,opacity:i}).add(n.axisGroup)),l&&!isNaN(C)&&(l.xy=T=this.getLabelPosition(C,T,l,o,c,S,t,w),this.isFirst&&!this.isLast&&!p(r.showFirstLabel,1)||this.isLast&&!this.isFirst&&!p(r.showLastLabel,1)?k=!1:!n.isRadial&&!c.step&&!c.rotation&&!e&&0!==i&&(k=this.handleOverflow(t,T)),w&&t%w&&(k=!1),k&&!isNaN(T.y)?(T.opacity=i,l[this.isNew?"attr":"animate"](T),this.isNew=!1):l.attr("y",-9999))},destroy:function(){A(this,this.axis)}};var di=function(t,e){this.axis=t,e&&(this.options=e,this.id=e.id)};di.prototype={render:function(){var t,i=this,n=i.axis,r=n.horiz,s=(n.pointRange||0)/2,o=i.options,l=o.label,h=i.label,d=o.width,u=o.to,f=o.from,g=c(f)&&c(u),m=o.value,y=o.dashStyle,v=i.svgElem,x=[],b=o.color,w=o.zIndex,k=o.events,S=n.chart.renderer;if(n.isLog&&(f=a(f),u=a(u),m=a(m)),d)x=n.getPlotLinePath(m,d),s={stroke:b,"stroke-width":d},y&&(s.dashstyle=y);else{if(!g)return;f=ue(f,n.min-s),u=pe(u,n.max+s),x=n.getPlotBandPath(f,u,o),s={fill:b},o.borderWidth&&(s.stroke=o.borderColor,s["stroke-width"]=o.borderWidth)}if(c(w)&&(s.zIndex=w),v)x?v.animate({d:x},null,v.onGetPath):(v.hide(),v.onGetPath=function(){v.show()},h&&(i.label=h=h.destroy()));else if(x&&x.length&&(i.svgElem=v=S.path(x).attr(s).add(),k))for(t in o=function(t){v.on(t,function(e){k[t].apply(i,[e])})},k)o(t);return l&&c(l.text)&&x&&x.length&&n.width>0&&n.height>0?(l=e({align:r&&g&&"center",x:r?!g&&4:10,verticalAlign:!r&&g&&"middle",y:r?g?16:10:g?6:-4,rotation:r&&!g&&90},l),h||(i.label=h=S.text(l.text,0,0,l.useHTML).attr({align:l.textAlign||l.align,rotation:l.rotation,zIndex:w}).css(l.style).add()),n=[x[1],x[4],p(x[6],x[1])],x=[x[2],x[5],p(x[7],x[2])],r=C(n),g=C(x),h.align(l,!1,{x:r,y:g,width:P(n)-r,height:P(x)-g}),h.show()):h&&h.hide(),i},destroy:function(){h(this.axis.plotLinesAndBands,this),delete this.axis,A(this)}},z.prototype={defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,gridLineColor:"#C0C0C0",labels:Xe,lineColor:"#C0D0E0",lineWidth:1,minPadding:.01,maxPadding:.01,minorGridLineColor:"#E0E0E0",minorGridLineWidth:1,minorTickColor:"#A0A0A0",minorTickLength:2,minorTickPosition:"outside",startOfWeek:1,startOnTick:!1,tickColor:"#C0D0E0",tickLength:5,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",tickWidth:1,title:{align:"middle",style:{color:"#4d759e",fontWeight:"bold"}},type:"linear"},defaultYAxisOptions:{endOnTick:!0,gridLineWidth:1,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8,y:3},lineWidth:0,maxPadding:.05,minPadding:.05,startOnTick:!0,tickWidth:0,title:{rotation:270,text:"Values"},stackLabels:{enabled:!1,formatter:function(){return y(this.total,-1)},style:Xe.style}},defaultLeftAxisOptions:{labels:{x:-8,y:null},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:8,y:null},title:{rotation:90}},defaultBottomAxisOptions:{labels:{x:0,y:14},title:{rotation:0}},defaultTopAxisOptions:{labels:{x:0,y:-5},title:{rotation:0}},init:function(t,e){var i=e.isX;this.horiz=t.inverted?!i:i,this.coll=(this.isXAxis=i)?"xAxis":"yAxis",this.opposite=e.opposite,this.side=e.side||(this.horiz?this.opposite?0:2:this.opposite?1:3),this.setOptions(e);var n=this.options,r=n.type;this.labelFormatter=n.labels.formatter||this.defaultLabelFormatter,this.userOptions=e,this.minPixelPadding=0,this.chart=t,this.reversed=n.reversed,this.zoomEnabled=n.zoomEnabled!==!1,this.categories=n.categories||"category"===r,this.names=[],this.isLog="logarithmic"===r,this.isDatetimeAxis="datetime"===r,this.isLinked=c(n.linkedTo),this.tickmarkOffset=this.categories&&"between"===n.tickmarkPlacement?.5:0,this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},this.len=0,this.minRange=this.userMinRange=n.minRange||n.maxZoom,this.range=n.range,this.offset=n.offset||0,this.stacks={},this.oldStacks={},this.stackExtremes={},this.min=this.max=null,this.crosshair=p(n.crosshair,u(t.options.tooltip.crosshairs)[i?0:1],!1);var s,n=this.options.events;-1===Ye(this,t.axes)&&(t.axes.push(this),t[this.coll].push(this)),this.series=this.series||[],t.inverted&&i&&this.reversed===_&&(this.reversed=!0),this.removePlotLine=this.removePlotBand=this.removePlotBandOrLine;for(s in n)Ze(this,s,n[s]);this.isLog&&(this.val2lin=a,this.lin2val=l)},setOptions:function(t){this.options=e(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],e(X[this.coll],t))},defaultLabelFormatter:function(){var t,e=this.axis,i=this.value,n=e.categories,r=this.dateTimeLabelFormat,s=X.lang.numericSymbols,o=s&&s.length,a=e.options.labels.format,e=e.isLog?i:e.tickInterval;if(a)t=b(a,this);else if(n)t=i;else if(r)t=G(r,i);else if(o&&e>=1e3)for(;o--&&t===_;)n=Math.pow(1e3,o+1),e>=n&&null!==s[o]&&(t=y(i/n,-1)+s[o]);return t===_&&(t=i>=1e4?y(i,0):y(i,-1,_,"")),t},getSeriesExtremes:function(){var t=this,e=t.chart;t.hasVisibleSeries=!1,t.dataMin=t.dataMax=null,t.stackExtremes={},t.buildStacks(),je(t.series,function(i){if(i.visible||!e.options.chart.ignoreHiddenSeries){var n;n=i.options.threshold;var r;t.hasVisibleSeries=!0,t.isLog&&0>=n&&(n=null),t.isXAxis?(n=i.xData,n.length&&(t.dataMin=pe(p(t.dataMin,n[0]),C(n)),t.dataMax=ue(p(t.dataMax,n[0]),P(n)))):(i.getExtremes(),r=i.dataMax,i=i.dataMin,c(i)&&c(r)&&(t.dataMin=pe(p(t.dataMin,i),i),t.dataMax=ue(p(t.dataMax,r),r)),c(n)&&(t.dataMin>=n?(t.dataMin=n,t.ignoreMinPadding=!0):t.dataMaxt||t>h+this.width)&&(a=!0)):(t=h,i=u-this.right,(c>s||s>c+this.height)&&(a=!0)),a&&!n?null:l.renderer.crispLine(["M",t,s,"L",i,o],e||1)},getLinearTickPositions:function(t,e,i){for(var n,e=I(ce(e/t)*t),i=I(de(i/t)*t),r=[];i>=e&&(r.push(e),e=I(e+t),e!==n);)n=e;return r},getMinorTickPositions:function(){var t,e=this.options,i=this.tickPositions,n=this.minorTickInterval,r=[];if(this.isLog)for(t=i.length,e=1;t>e;e++)r=r.concat(this.getLogTickPositions(n,i[e-1],i[e],!0));else if(this.isDatetimeAxis&&"auto"===e.minorTickInterval)r=r.concat(this.getTimeTicks(this.normalizeTimeTickInterval(n),this.min,this.max,e.startOfWeek)),r[0]=this.minRange;if(this.isXAxis&&this.minRange===_&&!this.isLog&&(c(o.min)||c(o.max)?this.minRange=null:(je(this.series,function(t){for(r=t.xData,i=s=t.xIncrement?1:r.length-1;i>0;i--)n=r[i]-r[i-1],(e===_||e>n)&&(e=n)}),this.minRange=pe(5*e,this.dataMax-this.dataMin))),l-al-a&&(t[0]=l-d,t[1]=p(o.min,l-d),a=P(t))}this.min=a,this.max=l},setAxisTranslation:function(t){var e,i=this.max-this.min,r=0,s=0,o=0,a=this.linkedParent,l=!!this.categories,h=this.transA;(this.isXAxis||l)&&(a?(s=a.minPointOffset,o=a.pointRangePadding):je(this.series,function(t){var a=ue(t.pointRange,+l),h=t.options.pointPlacement,d=t.closestPointRange;a>i&&(a=0),r=ue(r,a),s=ue(s,n(h)?0:a/2),o=ue(o,"on"===h?0:a),!t.noSharedTooltip&&c(d)&&(e=c(e)?pe(e,d):d)}),a=this.ordinalSlope&&e?this.ordinalSlope/e:1,this.minPointOffset=s*=a,this.pointRangePadding=o*=a,this.pointRange=pe(r,i),this.closestPointRange=e),t&&(this.oldTransA=h),this.translationSlope=this.transA=h=this.len/(i+o||1),this.transB=this.horiz?this.left:this.bottom,this.minPixelPadding=h*s},setTickPositions:function(t){var e,i=this,n=i.chart,r=i.options,s=i.isLog,o=i.isDatetimeAxis,l=i.isXAxis,h=i.isLinked,d=i.options.tickPositioner,u=r.maxPadding,f=r.minPadding,g=r.tickInterval,m=r.minTickInterval,y=r.tickPixelInterval,v=i.categories;h?(i.linkedParent=n[i.coll][r.linkedTo],n=i.linkedParent.getExtremes(),i.min=p(n.min,n.dataMin),i.max=p(n.max,n.dataMax),r.type!==i.linkedParent.options.type&&M(11,1)):(i.min=p(i.userMin,r.min,i.dataMin),i.max=p(i.userMax,r.max,i.dataMax)),s&&(!t&&pe(i.min,p(i.dataMin,i.min))<=0&&M(10,1),i.min=I(a(i.min)),i.max=I(a(i.max))),i.range&&c(i.max)&&(i.userMin=i.min=ue(i.min,i.max-i.range),i.userMax=i.max,i.range=null),i.beforePadding&&i.beforePadding(),i.adjustForMinRange(),!v&&!i.usePercentage&&!h&&c(i.min)&&c(i.max)&&(n=i.max-i.min)&&(c(r.min)||c(i.userMin)||!f||!(i.dataMin<0)&&i.ignoreMinPadding||(i.min-=n*f),c(r.max)||c(i.userMax)||!u||!(i.dataMax>0)&&i.ignoreMaxPadding||(i.max+=n*u)),i.min===i.max||void 0===i.min||void 0===i.max?i.tickInterval=1:h&&!g&&y===i.linkedParent.options.tickPixelInterval?i.tickInterval=i.linkedParent.tickInterval:(i.tickInterval=p(g,v?1:(i.max-i.min)*y/ue(i.len,y)),!c(g)&&i.lenue(2*i.len,200)&&M(19,!0),t=o?i.getTimeTicks(i.normalizeTimeTickInterval(i.tickInterval,r.units),i.min,i.max,r.startOfWeek,i.ordinalPositions,i.closestPointRange,!0):s?i.getLogTickPositions(i.tickInterval,i.min,i.max):i.getLinearTickPositions(i.tickInterval,i.min,i.max),e&&t.splice(1,t.length-2),i.tickPositions=t),h||(s=t[0],o=t[t.length-1],h=i.minPointOffset||0,r.startOnTick?i.min=s:i.min-h>s&&t.shift(),r.endOnTick?i.max=o:i.max+h(e[n]||0)&&this.options.alignTicks!==!1&&(e[n]=i.length),t.maxTicks=e},adjustTickAmount:function(){var t=this._maxTicksKey,e=this.tickPositions,i=this.chart.maxTicks;if(i&&i[t]&&!this.isDatetimeAxis&&!this.categories&&!this.isLinked&&this.options.alignTicks!==!1&&this.min!==_){var n=this.tickAmount,r=e.length;if(this.tickAmount=t=i[t],t>r){for(;e.length=this.dataMax&&(e=_)),this.displayBtn=t!==_||e!==_,this.setExtremes(t,e,!1,_,{trigger:"zoom"}),!0},setAxisSize:function(){var t,e,i=this.chart,n=this.options,r=n.offsetLeft||0,s=n.offsetRight||0,o=this.horiz;this.left=e=p(n.left,i.plotLeft+r),this.top=t=p(n.top,i.plotTop),this.width=r=p(n.width,i.plotWidth-r+s),this.height=n=p(n.height,i.plotHeight),this.bottom=i.chartHeight-n-t,this.right=i.chartWidth-r-e,this.len=ue(o?r:n,0),this.pos=o?e:t},getExtremes:function(){var t=this.isLog;return{min:t?I(l(this.min)):this.min,max:t?I(l(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(t){var e=this.isLog,i=e?l(this.min):this.min,e=e?l(this.max):this.max;return i>t||null===t?t=i:t>e&&(t=e),this.translate(t,0,1,0,1)},autoLabelAlign:function(t){return t=(p(t,0)-90*this.side+720)%360,t>15&&165>t?"right":t>195&&345>t?"left":"center"},getOffset:function(){var t,e,i,n,r,s,o,a=this,l=a.chart,h=l.renderer,d=a.options,u=a.tickPositions,f=a.ticks,g=a.horiz,m=a.side,y=l.inverted?[1,0,3,2][m]:m,v=0,x=0,b=d.title,w=d.labels,k=0,S=l.axisOffset,T=l.clipOffset,C=[-1,1,1,-1][m],P=1,A=p(w.maxStaggerLines,5);if(a.hasData=t=a.hasVisibleSeries||c(a.min)&&c(a.max)&&!!u,a.showAxis=l=t||p(d.showEmpty,!0),a.staggerLines=a.horiz&&w.staggerLines,a.axisGroup||(a.gridGroup=h.g("grid").attr({zIndex:d.gridZIndex||1}).add(),a.axisGroup=h.g("axis").attr({zIndex:d.zIndex||2}).add(),a.labelGroup=h.g("axis-labels").attr({zIndex:w.zIndex||7}).add()),t||a.isLinked){if(a.labelAlign=p(w.align||a.autoLabelAlign(w.rotation)),je(u,function(t){f[t]?f[t].addLabel():f[t]=new R(a,t)}),a.horiz&&!a.staggerLines&&A&&!w.rotation){for(i=a.reversed?[].concat(u).reverse():u;A>P;){for(t=[],n=!1,w=0;w1&&(a.staggerLines=P)}je(u,function(t){(0===m||2===m||{1:"left",3:"right"}[m]===a.labelAlign)&&(k=ue(f[t].getLabelSize(),k))}),a.staggerLines&&(k*=a.staggerLines,a.labelOffset=k)}else for(i in f)f[i].destroy(),delete f[i];b&&b.text&&b.enabled!==!1&&(a.axisTitle||(a.axisTitle=h.text(b.text,0,0,b.useHTML).attr({zIndex:7,rotation:b.rotation||0,align:b.textAlign||{low:"left",middle:"center",high:"right"}[b.align]}).css(b.style).add(a.axisGroup),a.axisTitle.isNew=!0),l&&(v=a.axisTitle.getBBox()[g?"height":"width"],x=p(b.margin,g?5:10),e=b.offset),a.axisTitle[l?"show":"hide"]()),a.offset=C*p(d.offset,S[m]),a.axisTitleMargin=p(e,k+x+(2!==m&&k&&C*d.labels[g?"y":"x"])),S[m]=ue(S[m],a.axisTitleMargin+v+C*a.offset),T[y]=ue(T[y],2*ce(d.lineWidth/2))},getLinePath:function(t){var e=this.chart,i=this.opposite,n=this.offset,r=this.horiz,s=this.left+(i?this.width:0)+n,n=e.chartHeight-this.bottom-(i?this.height:0)+n;return i&&(t*=-1),e.renderer.crispLine(["M",r?this.left:s,r?n:this.top,"L",r?e.chartWidth-this.right:s,r?n:e.chartHeight-this.bottom],t)},getTitlePosition:function(){var t=this.horiz,e=this.left,n=this.top,r=this.len,s=this.options.title,o=t?e:n,a=this.opposite,l=this.offset,h=i(s.style.fontSize||12),r={low:o+(t?0:r),middle:o+r/2,high:o+(t?r:0)}[s.align],e=(t?n+this.height:e)+(t?1:-1)*(a?-1:1)*this.axisTitleMargin+(2===this.side?h:0);return{x:t?r:e+(a?this.width:0)+l+(s.x||0),y:t?e-(a?this.height:0)+l:r+(s.y||0)}},render:function(){var t,e,i,n=this,r=n.horiz,s=n.reversed,o=n.chart,a=o.renderer,h=n.options,d=n.isLog,u=n.isLinked,p=n.tickPositions,f=n.axisTitle,g=n.stacks,m=n.ticks,y=n.minorTicks,v=n.alternateBands,x=h.stackLabels,b=h.alternateGridColor,w=n.tickmarkOffset,k=h.lineWidth,S=o.hasRendered&&c(n.oldMin)&&!isNaN(n.oldMin),T=n.hasData,C=n.showAxis,P=n.justifyLabels=!n.staggerLines&&r&&"justify"===h.labels.overflow;if(n.labelEdge.length=0,je([m,y,v],function(t){for(var e in t)t[e].isActive=!1}),(T||u)&&(n.minorTickInterval&&!n.categories&&je(n.getMinorTickPositions(),function(t){y[t]||(y[t]=new R(n,t,"minor")),S&&y[t].isNew&&y[t].render(null,!0),y[t].render(null,!1,1)}),p.length&&(t=p.slice(),(r&&s||!r&&!s)&&t.reverse(),P&&(t=t.slice(1).concat([t[0]])),je(t,function(e,i){P&&(i=i===t.length-1?0:i+1),(!u||e>=n.min&&e<=n.max)&&(m[e]||(m[e]=new R(n,e)),S&&m[e].isNew&&m[e].render(i,!0,.1),m[e].render(i,!1,1))}),w&&0===n.min&&(m[-1]||(m[-1]=new R(n,-1,null,!0)),m[-1].render(-1))),b&&je(p,function(t,r){r%2===0&&t=.5)t=he(t),o=this.getLinearTickPositions(t,e,i);else if(t>=.08)for(var h,c,d,u,f,s=ce(e),r=t>.3?[1,2,4]:t>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];i+1>s&&!f;s++)for(c=r.length,h=0;c>h&&!f;h++)d=a(l(s)*r[h]),d>e&&(!n||i>=u)&&o.push(u),u>i&&(f=!0),u=d;else e=l(e),i=l(i),t=r[n?"minorTickInterval":"tickInterval"],t=p("auto"===t?null:t,this._minorAutoInterval,(i-e)*(r.tickPixelInterval/(n?5:1))/((n?s/this.tickPositions.length:s)||1)),t=k(t,null,w(t)),o=Ue(this.getLinearTickPositions(t,e,i),a),n||(this._minorAutoInterval=t/5);return n||(this.tickInterval=t),o},z.prototype.getTimeTicks=function(e,i,n,r){var s,o=[],a={},l=X.global.useUTC,h=new Date(i-q),d=e.unitRange,u=e.count;if(c(i)){d>=j.second&&(h.setMilliseconds(0),h.setSeconds(d>=j.minute?0:u*ce(h.getSeconds()/u))),d>=j.minute&&h[ee](d>=j.hour?0:u*ce(h[U]()/u)),d>=j.hour&&h[ie](d>=j.day?0:u*ce(h[Z]()/u)),d>=j.day&&h[ne](d>=j.month?1:u*ce(h[Q]()/u)),d>=j.month&&(h[re](d>=j.year?0:u*ce(h[J]()/u)),s=h[te]()),d>=j.year&&(s-=s%u,h[se](s)),d===j.week&&h[ne](h[Q]()-h[K]()+p(r,1)),i=1,q&&(h=new Date(h.getTime()+q)),s=h[te]();for(var r=h.getTime(),f=h[J](),g=h[Q](),m=l?q:(864e5+6e4*h.getTimezoneOffset())%864e5;n>r;)o.push(r),d===j.year?r=V(s+i*u,0):d===j.month?r=V(s,f+i*u):l||d!==j.day&&d!==j.week?r+=d*u:r=V(s,f,g+i*u*(d===j.day?1:7)),i++;o.push(r),je(Ve(o,function(t){return d<=j.hour&&t%j.day===m}),function(t){a[t]="day"})}return o.info=t(e,{higherRanks:a,totalRange:d*u}),o},z.prototype.normalizeTimeTickInterval=function(t,e){var i,n=e||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],r=n[n.length-1],s=j[r[0]],o=r[1];for(i=0;it&&(o=[1,2,5]),n=k(t/s,o,"year"===r[0]?ue(w(t/s),1):1),{unitRange:s,count:n,unitName:r[0]}},B.prototype={destroy:function(){A(this,this.axis)},render:function(t){var e=this.options,i=e.format,i=i?b(i,this):e.formatter.call(this);this.label?this.label.attr({text:i,visibility:"hidden"}):this.label=this.axis.chart.renderer.text(i,0,0,e.useHTML).css(e.style).attr({align:this.textAlign,rotation:e.rotation,visibility:"hidden"}).add(t)},setOffset:function(t,e){var i=this.axis,n=i.chart,r=n.inverted,s=this.isNegative,o=i.translate(this.percent?100:this.total,0,0,0,1),i=i.translate(0),i=fe(o-i),a=n.xAxis[0].translate(this.x)+t,l=n.plotHeight,s={x:r?s?o:o-i:a,y:r?l-a-e:s?l-o-i:l-o,width:r?i:e,height:r?e:i};(r=this.label)&&(r.align(this.alignOptions,null,s),s=r.alignAttr,r.attr({visibility:this.options.crop===!1||n.isInsidePlot(s.x,s.y)?Ae?"inherit":"visible":"hidden"}))}},F.prototype={init:function(t,e){var n=e.borderWidth,r=e.style,s=i(r.padding);this.chart=t,this.options=e,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.label=t.renderer.label("",0,0,e.shape,null,null,e.useHTML,null,"tooltip").attr({padding:s,fill:e.backgroundColor,"stroke-width":n,r:e.borderRadius,zIndex:8}).css(r).css({padding:0}).add().attr({y:-999}),Me||this.label.shadow(e.shadow),this.shared=e.shared},destroy:function(){this.label&&(this.label=this.label.destroy()),clearTimeout(this.hideTimer),clearTimeout(this.tooltipTimeout)},move:function(e,i,n,r){var s=this,o=s.now,a=s.options.animation!==!1&&!s.isHidden;t(o,{x:a?(2*o.x+e)/3:e,y:a?(o.y+i)/2:i,anchorX:a?(2*o.anchorX+n)/3:n,anchorY:a?(o.anchorY+r)/2:r}),s.label.attr(o),a&&(fe(e-o.x)>1||fe(i-o.y)>1)&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){s&&s.move(e,i,n,r)},32))},hide:function(){var t,e=this;clearTimeout(this.hideTimer),this.isHidden||(t=this.chart.hoverPoints,this.hideTimer=setTimeout(function(){e.label.fadeOut(),e.isHidden=!0},p(this.options.hideDelay,500)),t&&je(t,function(t){t.setState()}),this.chart.hoverPoints=null)},getAnchor:function(t,e){var i,n,r=this.chart,s=r.inverted,o=r.plotTop,a=0,l=0,t=u(t);return i=t[0].tooltipPos,this.followPointer&&e&&(e.chartX===_&&(e=r.pointer.normalize(e)),i=[e.chartX-r.plotLeft,e.chartY-o]),i||(je(t,function(t){n=t.series.yAxis,a+=t.plotX,l+=(t.plotLow?(t.plotLow+t.plotHigh)/2:t.plotY)+(!s&&n?n.top-o:0)}),a/=t.length,l/=t.length,i=[s?r.plotWidth-l:a,this.shared&&!s&&t.length>1&&e?e.chartY-o:s?r.plotHeight-a:l]),Ue(i,he)},getPosition:function(t,e,i){var n,r=this.chart,s=r.plotLeft,o=r.plotTop,a=r.plotWidth,l=r.plotHeight,h=p(this.options.distance,12),c=i.plotX,i=i.plotY,r=c+s+(r.inverted?h:-t-h),d=i-e+o+15;return 7>r&&(r=s+ue(c,0)+h),r+t>s+a&&(r-=r+t-(s+a),d=i-e+o-h,n=!0),o+5>d&&(d=o+5,n&&i>=d&&d+e>=i&&(d=i+o+h)),d+e>o+l&&(d=ue(o,o+l-e-h)),{x:r,y:d}},defaultFormatter:function(t){var e,i=this.points||u(this),n=i[0].series;return e=[n.tooltipHeaderFormatter(i[0])],je(i,function(t){n=t.series,e.push(n.tooltipFormatter&&n.tooltipFormatter(t)||t.point.tooltipFormatter(n.tooltipOptions.pointFormat))}),e.push(t.options.footerFormat||""),e.join("")},refresh:function(t,e){var i,n,r,s=this.chart,o=this.label,a=this.options,l={},h=[];r=a.formatter||this.defaultFormatter;var c,l=s.hoverPoints,d=this.shared;clearTimeout(this.hideTimer),this.followPointer=u(t)[0].series.tooltipOptions.followPointer,n=this.getAnchor(t,e),i=n[0],n=n[1],!d||t.series&&t.series.noSharedTooltip?l=t.getLabelConfig():(s.hoverPoints=t,l&&je(l,function(t){t.setState()}),je(t,function(t){t.setState("hover"),h.push(t.getLabelConfig())}),l={x:t[0].category,y:t[0].y},l.points=h,t=t[0]),r=r.call(l,this),l=t.series,r===!1?this.hide():(this.isHidden&&(ei(o),o.attr("opacity",1).show()),o.attr({text:r}),c=a.borderColor||t.color||l.color||"#606060",o.attr({stroke:c}),this.updatePosition({plotX:i,plotY:n}),this.isHidden=!1),Qe(s,"tooltipRefresh",{text:r,x:i+s.plotLeft,y:n+s.plotTop,borderColor:c})},updatePosition:function(t){var e=this.chart,i=this.label,i=(this.options.positioner||this.getPosition).call(this,i.width,i.height,t);this.move(he(i.x),he(i.y),t.plotX+e.plotLeft,t.plotY+e.plotTop)}};var ui=Highcharts.Pointer=function(t,e){this.init(t,e)};if(ui.prototype={init:function(t,e){var i,n=e.chart,r=n.events,s=Me?"":n.zoomType,n=t.inverted;this.options=e,this.chart=t,this.zoomX=i=/x/.test(s),this.zoomY=s=/y/.test(s),this.zoomHor=i&&!n||s&&n,this.zoomVert=s&&!n||i&&n,this.runChartClick=r&&!!r.click,this.pinchDown=[],this.lastValidTouch={},e.tooltip.enabled&&(t.tooltip=new F(t,e.tooltip)),this.setDOMEvents()},normalize:function(e,i){var n,r,e=e||ae.event;return e.target||(e.target=e.srcElement),e=Je(e),r=e.touches?e.touches.item(0):e,i||(this.chartPosition=i=qe(this.chart.container)),r.pageX===_?(n=ue(e.x,e.clientX-i.left),r=e.y):(n=r.pageX-i.left,r=r.pageY-i.top),t(e,{chartX:he(n),chartY:he(r)})},getCoordinates:function(t){var e={xAxis:[],yAxis:[]};return je(this.chart.axes,function(i){e[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(t[i.horiz?"chartX":"chartY"])})}),e},getIndex:function(t){var e=this.chart;return e.inverted?e.plotHeight+e.plotTop-t.chartY:t.chartX-e.plotLeft},runPointActions:function(t){var e,i,n,r,s=this,o=s.chart,a=o.series,l=o.tooltip,h=o.hoverPoint,c=o.hoverSeries,d=o.chartWidth,u=s.getIndex(t);if(l&&s.options.tooltip.shared&&(!c||!c.noSharedTooltip)){for(i=[],n=a.length,r=0;n>r;r++)a[r].visible&&a[r].options.enableMouseTracking!==!1&&!a[r].noSharedTooltip&&a[r].tooltipPoints.length&&(e=a[r].tooltipPoints[u])&&e.series&&(e._dist=fe(u-e.clientX),d=pe(d,e._dist),i.push(e));for(n=i.length;n--;)i[n]._dist>d&&i.splice(n,1);i.length&&i[0].clientX!==s.hoverX&&(l.refresh(i,t),s.hoverX=i[0].clientX)}c&&c.tracker?(e=c.tooltipPoints[u])&&e!==h&&e.onMouseOver(t):l&&l.followPointer&&!l.isHidden&&(a=l.getAnchor([{}],t),l.updatePosition({plotX:a[0],plotY:a[1]})),l&&!s._onDocumentMouseMove&&(s._onDocumentMouseMove=function(t){s.onDocumentMouseMove(t)},Ze(oe,"mousemove",s._onDocumentMouseMove)),je(o.axes,function(i){i.drawCrosshair(t,p(h,e))})},reset:function(t){var e=this.chart,i=e.hoverSeries,n=e.hoverPoint,r=e.tooltip,s=r&&r.shared?e.hoverPoints:n;(t=t&&r&&s)&&u(s)[0].plotX===_&&(t=!1),t?(r.refresh(s),n&&n.setState(n.state,!0)):(n&&n.onMouseOut(),i&&i.onMouseOut(),r&&r.hide(),this._onDocumentMouseMove&&(Ke(oe,"mousemove",this._onDocumentMouseMove),this._onDocumentMouseMove=null),je(e.axes,function(t){t.hideCrosshair()}),this.hoverX=null)},scaleGroups:function(t,e){var i,n=this.chart;je(n.series,function(r){i=t||r.getPlotBox(),r.xAxis&&r.xAxis.zoomEnabled&&(r.group.attr(i),r.markerGroup&&(r.markerGroup.attr(i),r.markerGroup.clip(e?n.clipRect:null)),r.dataLabelsGroup&&r.dataLabelsGroup.attr(i))}),n.clipRect.attr(e||n.clipBox)},pinchTranslate:function(t,e,i,n,r,s,o,a){t&&this.pinchTranslateDirection(!0,i,n,r,s,o,a),e&&this.pinchTranslateDirection(!1,i,n,r,s,o,a)},pinchTranslateDirection:function(t,e,i,n,r,s,o,a){var l,h,c,d=this.chart,u=t?"x":"y",p=t?"X":"Y",f="chart"+p,g=t?"width":"height",m=d["plot"+(t?"Left":"Top")],y=a||1,v=d.inverted,x=d.bounds[t?"h":"v"],b=1===e.length,w=e[0][f],k=i[0][f],S=!b&&e[1][f],T=!b&&i[1][f],i=function(){!b&&fe(w-S)>20&&(y=a||fe(k-T)/fe(w-S)),h=(m-k)/y+w,l=d["plot"+(t?"Width":"Height")]/y};i(),e=h,ex.max&&(e=x.max-l,c=!0),c?(k-=.8*(k-o[u][0]),b||(T-=.8*(T-o[u][1])),i()):o[u]=[k,T],v||(s[u]=h-m,s[g]=l),s=v?1/y:y,r[g]=l,r[u]=e,n[v?t?"scaleY":"scaleX":"scale"+p]=y,n["translate"+p]=s*m+(k-s*w)},pinch:function(e){var i=this,n=i.chart,r=i.pinchDown,s=n.tooltip&&n.tooltip.options.followTouchMove,o=e.touches,a=o.length,l=i.lastValidTouch,h=i.zoomHor||i.pinchHor,c=i.zoomVert||i.pinchVert,d=h||c,u=i.selectionMarker,p={},f=1===a&&(i.inClass(e.target,"highcharts-tracker")&&n.runTrackerClick||n.runChartClick),g={};(d||s)&&!f&&e.preventDefault(),Ue(o,function(t){return i.normalize(t)}),"touchstart"===e.type?(je(o,function(t,e){r[e]={chartX:t.chartX,chartY:t.chartY}}),l.x=[r[0].chartX,r[1]&&r[1].chartX],l.y=[r[0].chartY,r[1]&&r[1].chartY],je(n.axes,function(t){if(t.zoomEnabled){var e=n.bounds[t.horiz?"h":"v"],i=t.minPixelPadding,r=t.toPixels(t.dataMin),s=t.toPixels(t.dataMax),o=pe(r,s),r=ue(r,s);e.min=pe(t.pos,o-i),e.max=ue(t.pos+t.len,r+i)}})):r.length&&(u||(i.selectionMarker=u=t({destroy:Oe},n.plotBox)),i.pinchTranslate(h,c,r,o,p,u,g,l),i.hasPinched=d,i.scaleGroups(p,g),!d&&s&&1===a&&this.runPointActions(i.normalize(e)))},dragStart:function(t){var e=this.chart;e.mouseIsDown=t.type,e.cancelClick=!1,e.mouseDownX=this.mouseDownX=t.chartX,e.mouseDownY=this.mouseDownY=t.chartY},drag:function(t){var e,i=this.chart,n=i.options.chart,r=t.chartX,s=t.chartY,o=this.zoomHor,a=this.zoomVert,l=i.plotLeft,h=i.plotTop,c=i.plotWidth,d=i.plotHeight,u=this.mouseDownX,p=this.mouseDownY;l>r?r=l:r>l+c&&(r=l+c),h>s?s=h:s>h+d&&(s=h+d),this.hasDragged=Math.sqrt(Math.pow(u-r,2)+Math.pow(p-s,2)),this.hasDragged>10&&(e=i.isInsidePlot(u-l,p-h),i.hasCartesianSeries&&(this.zoomX||this.zoomY)&&e&&!this.selectionMarker&&(this.selectionMarker=i.renderer.rect(l,h,o?1:c,a?1:d,0).attr({fill:n.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add()),this.selectionMarker&&o&&(r-=u,this.selectionMarker.attr({width:fe(r),x:(r>0?0:r)+u})),this.selectionMarker&&a&&(r=s-p,this.selectionMarker.attr({height:fe(r),y:(r>0?0:r)+p})),e&&!this.selectionMarker&&n.panning&&i.pan(t,n.panning))},drop:function(e){var i=this.chart,n=this.hasPinched;if(this.selectionMarker){var r,s={xAxis:[],yAxis:[],originalEvent:e.originalEvent||e},o=this.selectionMarker,a=o.x,l=o.y;(this.hasDragged||n)&&(je(i.axes,function(t){if(t.zoomEnabled){var e=t.horiz,i=t.toValue(e?a:l),e=t.toValue(e?a+o.width:l+o.height);!isNaN(i)&&!isNaN(e)&&(s[t.coll].push({axis:t,min:pe(i,e),max:ue(i,e)}),r=!0)}}),r&&Qe(i,"selection",s,function(e){i.zoom(t(e,n?{animation:!1}:null))})),this.selectionMarker=this.selectionMarker.destroy(),n&&this.scaleGroups()}i&&(f(i.container,{cursor:i._cursor}),i.cancelClick=this.hasDragged>10,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(t){t=this.normalize(t),t.preventDefault&&t.preventDefault(),this.dragStart(t)},onDocumentMouseUp:function(t){this.drop(t)},onDocumentMouseMove:function(t){var e=this.chart,i=this.chartPosition,n=e.hoverSeries,t=this.normalize(t,i);i&&n&&!this.inClass(t.target,"highcharts-tracker")&&!e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)&&this.reset()},onContainerMouseLeave:function(){this.reset(),this.chartPosition=null},onContainerMouseMove:function(t){var e=this.chart,t=this.normalize(t);"mousedown"===e.mouseIsDown&&this.drag(t),(this.inClass(t.target,"highcharts-tracker")||e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop))&&!e.openMenu&&this.runPointActions(t)},inClass:function(t,e){for(var i;t;){if(i=d(t,"class")){if(-1!==i.indexOf(e))return!0;if(-1!==i.indexOf("highcharts-container"))return!1}t=t.parentNode}},onTrackerMouseOut:function(t){var e=this.chart.hoverSeries,t=t.relatedTarget||t.toElement,i=t.point&&t.point.series;!e||e.options.stickyTracking||this.inClass(t,"highcharts-tooltip")||i===e||e.onMouseOut()},onContainerClick:function(e){var i,n,r,s=this.chart,o=s.hoverPoint,a=s.plotLeft,l=s.plotTop,h=s.inverted,e=this.normalize(e);e.cancelBubble=!0,s.cancelClick||(o&&this.inClass(e.target,"highcharts-tracker")?(i=this.chartPosition,n=o.plotX,r=o.plotY,t(o,{pageX:i.left+a+(h?s.plotWidth-r:n),pageY:i.top+l+(h?s.plotHeight-n:r)}),Qe(o.series,"click",t(e,{point:o})),s.hoverPoint&&o.firePointEvent("click",e)):(t(e,this.getCoordinates(e)),s.isInsidePlot(e.chartX-a,e.chartY-l)&&Qe(s,"click",e)))},onContainerTouchStart:function(t){var e=this.chart;1===t.touches.length?(t=this.normalize(t),e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)?(this.runPointActions(t),this.pinch(t)):this.reset()):2===t.touches.length&&this.pinch(t)},onContainerTouchMove:function(t){(1===t.touches.length||2===t.touches.length)&&this.pinch(t)},onDocumentTouchEnd:function(t){this.drop(t)},setDOMEvents:function(){var t,e=this,i=e.chart.container;this._events=t=[[i,"onmousedown","onContainerMouseDown"],[i,"onmousemove","onContainerMouseMove"],[i,"onclick","onContainerClick"],[i,"mouseleave","onContainerMouseLeave"],[oe,"mouseup","onDocumentMouseUp"]],Ie&&t.push([i,"ontouchstart","onContainerTouchStart"],[i,"ontouchmove","onContainerTouchMove"],[oe,"touchend","onDocumentTouchEnd"]),je(t,function(t){e["_"+t[2]]=function(i){e[t[2]](i)},0===t[1].indexOf("on")?t[0][t[1]]=e["_"+t[2]]:Ze(t[0],t[1],e["_"+t[2]])})},destroy:function(){var t=this;je(t._events,function(e){0===e[1].indexOf("on")?e[0][e[1]]=null:Ke(e[0],e[1],t["_"+e[2]])}),delete t._events,clearInterval(t.tooltipTimeout)}},Xe=Highcharts.TrackerMixin={drawTrackerPoint:function(){var t=this,e=t.chart,i=e.pointer,n=t.options.cursor,r=n&&{cursor:n},s=function(i){var n,r=i.target;for(e.hoverSeries!==t&&t.onMouseOver();r&&!n;)n=r.point,r=r.parentNode;n!==_&&n!==e.hoverPoint&&n.onMouseOver(i)};je(t.points,function(t){t.graphic&&(t.graphic.element.point=t),t.dataLabel&&(t.dataLabel.element.point=t)}),t._hasTracking||(je(t.trackerGroups,function(e){t[e]&&(t[e].addClass("highcharts-tracker").on("mouseover",s).on("mouseout",function(t){i.onTrackerMouseOut(t)}).css(r),Ie)&&t[e].on("touchstart",s)}),t._hasTracking=!0)},drawTrackerGraph:function(){var t,e=this,i=e.options,n=i.trackByArea,r=[].concat(n?e.areaPath:e.graphPath),s=r.length,o=e.chart,a=o.pointer,l=o.renderer,h=o.options.tooltip.snap,c=e.tracker,d=i.cursor,u=d&&{cursor:d},d=e.singlePoints,p=function(){o.hoverSeries!==e&&e.onMouseOver()};if(s&&!n)for(t=s+1;t--;)"M"===r[t]&&r.splice(t+1,0,r[t+1]-h,r[t+2],"L"),(t&&"M"===r[t]||t===s)&&r.splice(t,0,"L",r[t-2]+h,r[t-1]);for(t=0;te-6&&e+n-6>s?"":Be}))}))},renderTitle:function(){var t=this.padding,e=this.options.title,i=0;e.text&&(this.title||(this.title=this.chart.renderer.label(e.text,t-3,t-4,null,null,null,null,null,"legend-title").attr({zIndex:1}).css(e.style).add(this.group)),t=this.title.getBBox(),i=t.height,this.offsetWidth=t.width,this.contentGroup.attr({translateY:i})),this.titleHeight=i},renderItem:function(t){var i,n=this,r=n.chart,s=r.renderer,o=n.options,a="horizontal"===o.layout,l=n.symbolWidth,h=o.symbolPadding,c=n.itemStyle,d=n.itemHiddenStyle,u=n.padding,f=a?p(o.itemDistance,8):0,m=!o.rtl,y=o.width,v=o.itemMarginBottom||0,x=n.itemMarginTop,w=n.initialItemX,k=t.legendItem,S=t.series&&t.series.drawLegendSymbol?t.series:t,T=S.options,T=T&&T.showCheckbox,C=o.useHTML;!k&&(t.legendGroup=s.g("legend-item").attr({zIndex:1}).add(n.scrollGroup),S.drawLegendSymbol(n,t),t.legendItem=k=s.text(o.labelFormat?b(o.labelFormat,t):o.labelFormatter.call(t),m?l+h:-h,n.baseline,C).css(e(t.visible?c:d)).attr({align:m?"left":"right",zIndex:2}).add(t.legendGroup),(C?k:t.legendGroup).on("mouseover",function(){t.setState("hover"),k.css(n.options.itemHoverStyle)}).on("mouseout",function(){k.css(t.visible?c:d),t.setState()}).on("click",function(e){var i=function(){t.setVisible()},e={browserEvent:e};t.firePointEvent?t.firePointEvent("legendItemClick",e,i):Qe(t,"legendItemClick",e,i)}),n.colorizeItem(t,t.visible),T)&&(t.checkbox=g("input",{type:"checkbox",checked:t.selected,defaultChecked:t.selected},o.itemCheckboxStyle,r.container),Ze(t.checkbox,"click",function(e){Qe(t,"checkboxClick",{checked:e.target.checked},function(){t.select()})})),s=k.getBBox(),i=t.legendItemWidth=o.itemWidth||t.legendItemWidth||l+h+s.width+f+(T?20:0),o=i,n.itemHeight=l=he(t.legendItemHeight||s.height),a&&n.itemX-w+o>(y||r.chartWidth-2*u-w)&&(n.itemX=w,n.itemY+=x+n.lastLineHeight+v,n.lastLineHeight=0),n.maxItemWidth=ue(n.maxItemWidth,o),n.lastItemY=x+n.itemY+v,n.lastLineHeight=ue(l,n.lastLineHeight),t._legendItemPos=[n.itemX,n.itemY],a?n.itemX+=o:(n.itemY+=x+l+v,n.lastLineHeight=l),n.offsetWidth=y||ue((a?n.itemX-w-f:o)+u,n.offsetWidth)},getAllItems:function(){var t=[];return je(this.chart.series,function(e){var i=e.options;p(i.showInLegend,c(i.linkedTo)?!1:_,!0)&&(t=t.concat(e.legendItems||("point"===i.legendType?e.data:e)))}),t},render:function(){var e,i,n,r,s=this,o=s.chart,a=o.renderer,l=s.group,h=s.box,c=s.options,d=s.padding,u=c.borderWidth,p=c.backgroundColor;s.itemX=s.initialItemX,s.itemY=s.initialItemY,s.offsetWidth=0,s.lastItemY=0,l||(s.group=l=a.g("legend").attr({zIndex:7}).add(),s.contentGroup=a.g().attr({zIndex:1}).add(l),s.scrollGroup=a.g().add(s.contentGroup)),s.renderTitle(),e=s.getAllItems(),T(e,function(t,e){return(t.options&&t.options.legendIndex||0)-(e.options&&e.options.legendIndex||0)}),c.reversed&&e.reverse(),s.allItems=e,s.display=i=!!e.length,je(e,function(t){s.renderItem(t)}),n=c.width||s.offsetWidth,r=s.lastItemY+s.lastLineHeight+s.titleHeight,r=s.handleOverflow(r),(u||p)&&(n+=d,r+=d,h?n>0&&r>0&&(h[h.isNew?"attr":"animate"](h.crisp(null,null,null,n,r)),h.isNew=!1):(s.box=h=a.rect(0,0,n,r,c.borderRadius,u||0).attr({stroke:c.borderColor,"stroke-width":u||0,fill:p||Be}).add(l).shadow(c.shadow),h.isNew=!0),h[i?"show":"hide"]()),s.legendWidth=n,s.legendHeight=r,je(e,function(t){s.positionItem(t)}),i&&l.align(t({width:n,height:r},c),!0,"spacingBox"),o.isResizing||this.positionCheckboxes()},handleOverflow:function(t){var e,i,n=this,r=this.chart,s=r.renderer,o=this.options,a=o.y,a=r.spacingBox.height+("top"===o.verticalAlign?-a:a)-this.padding,l=o.maxHeight,h=this.clipRect,c=o.navigation,d=p(c.animation,!0),u=c.arrowSize||12,f=this.nav,g=this.pages,m=this.allItems; +return"horizontal"===o.layout&&(a/=2),l&&(a=pe(a,l)),g.length=0,t>a&&!o.useHTML?(this.clipHeight=e=a-20-this.titleHeight-this.padding,this.currentPage=p(this.currentPage,1),this.fullHeight=t,je(m,function(t,n){var r=t._legendItemPos[1],s=he(t.legendItem.bBox.height),o=g.length;(!o||r-g[o-1]>e)&&g.push(i||r),n===m.length-1&&r+s-g[o-1]>e&&g.push(r),r!==i&&(i=r)}),h||(h=n.clipRect=s.clipRect(0,this.padding,9999,0),n.contentGroup.clip(h)),h.attr({height:e}),f||(this.nav=f=s.g().attr({zIndex:1}).add(this.group),this.up=s.symbol("triangle",0,0,u,u).on("click",function(){n.scroll(-1,d)}).add(f),this.pager=s.text("",15,10).css(c.style).add(f),this.down=s.symbol("triangle-down",0,0,u,u).on("click",function(){n.scroll(1,d)}).add(f)),n.scroll(0),t=a):f&&(h.attr({height:r.chartHeight}),f.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),t},scroll:function(t,e){var i=this.pages,n=i.length,r=this.currentPage+t,s=this.clipHeight,o=this.options.navigation,a=o.activeColor,o=o.inactiveColor,l=this.pager,h=this.padding;r>n&&(r=n),r>0&&(e!==_&&D(e,this.chart),this.nav.attr({translateX:h,translateY:s+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({fill:1===r?o:a}).css({cursor:1===r?"default":"pointer"}),l.attr({text:r+"/"+n}),this.down.attr({x:18+this.pager.getBBox().width,fill:r===n?o:a}).css({cursor:r===n?"default":"pointer"}),i=-i[r-1]+this.initialItemY,this.scrollGroup.animate({translateY:i}),this.currentPage=r,this.positionCheckboxes(i))}},li=Highcharts.LegendSymbolMixin={drawRectangle:function(t,e){var i=t.options.symbolHeight||12;e.legendSymbol=this.chart.renderer.rect(0,t.baseline-5-i/2,t.symbolWidth,i,p(t.options.symbolRadius,2)).attr({zIndex:3}).add(e.legendGroup)},drawLineMarker:function(t){var e,i=this.options,n=i.marker;e=t.symbolWidth;var r,s=this.chart.renderer,o=this.legendGroup,t=t.baseline-he(.3*s.fontMetrics(t.options.itemStyle.fontSize).b);i.lineWidth&&(r={"stroke-width":i.lineWidth},i.dashStyle&&(r.dashstyle=i.dashStyle),this.legendLine=s.path(["M",0,t,"L",e,t]).attr(r).add(o)),n&&n.enabled&&(i=n.radius,this.legendSymbol=e=s.symbol(this.symbol,e/2-i,t-i,2*i,2*i).add(o),e.isMarker=!0)}},/Trident\/7\.0/.test(xe)&&x(fi.prototype,"positionItem",function(t,e){var i=this,n=function(){e._legendItemPos&&t.call(i,e)};i.chart.renderer.forExport?n():setTimeout(n)}),N.prototype={init:function(t,i){var n,r=t.series;t.series=null,n=e(X,t),n.series=t.series=r,this.userOptions=t,r=n.chart,this.margin=this.splashArray("margin",r),this.spacing=this.splashArray("spacing",r);var s=r.events;this.bounds={h:{},v:{}},this.callback=i,this.isResizing=0,this.options=n,this.axes=[],this.series=[],this.hasCartesianSeries=r.showAxes;var o,a=this;if(a.index=Re.length,Re.push(a),r.reflow!==!1&&Ze(a,"load",function(){a.initReflow()}),s)for(o in s)Ze(a,o,s[o]);a.xAxis=[],a.yAxis=[],a.animation=Me?!1:p(r.animation,!0),a.pointCount=0,a.counters=new S,a.firstRender()},initSeries:function(t){var e=this.options.chart;return(e=He[t.type||e.type||e.defaultSeriesType])||M(17,!0),e=new e,e.init(this,t),e},isInsidePlot:function(t,e,i){var n=i?e:t,t=i?t:e;return n>=0&&n<=this.plotWidth&&t>=0&&t<=this.plotHeight},adjustTickAmounts:function(){this.options.chart.alignTicks!==!1&&je(this.axes,function(t){t.adjustTickAmount()}),this.maxTicks=null},redraw:function(e){var i,n,r=this.axes,s=this.series,o=this.pointer,a=this.legend,l=this.isDirtyLegend,h=this.isDirtyBox,c=s.length,d=c,u=this.renderer,p=u.isHidden(),f=[];for(D(e,this),p&&this.cloneRenderTo(),this.layOutTitles();d--;)if(e=s[d],e.options.stacking&&(i=!0,e.isDirty)){n=!0;break}if(n)for(d=c;d--;)e=s[d],e.options.stacking&&(e.isDirty=!0);je(s,function(t){t.isDirty&&"point"===t.options.legendType&&(l=!0)}),l&&a.options.enabled&&(a.render(),this.isDirtyLegend=!1),i&&this.getStacks(),this.hasCartesianSeries&&(this.isResizing||(this.maxTicks=null,je(r,function(t){t.setScale()})),this.adjustTickAmounts(),this.getMargins(),je(r,function(t){t.isDirty&&(h=!0)}),je(r,function(e){e.isDirtyExtremes&&(e.isDirtyExtremes=!1,f.push(function(){Qe(e,"afterSetExtremes",t(e.eventArgs,e.getExtremes())),delete e.eventArgs})),(h||i)&&e.redraw()})),h&&this.drawChartBox(),je(s,function(t){t.isDirty&&t.visible&&(!t.isCartesian||t.xAxis)&&t.redraw()}),o&&o.reset&&o.reset(!0),u.draw(),Qe(this,"redraw"),p&&this.cloneRenderTo(!0),je(f,function(t){t.call()})},get:function(t){var e,i,n=this.axes,r=this.series;for(e=0;epe(l.dataMin,l.min)&&o=18&&25>=e&&(e=15)),n&&(n.css({width:(r.width||o)+"px"}).align(t({y:e+s.margin},r),!1,"spacingBox"),!r.floating&&!r.verticalAlign&&(e=de(e+n.getBBox().height))),this.titleOffset=e},getChartSize:function(){var t=this.options.chart,e=this.renderToClone||this.renderTo;this.containerWidth=Ge(e,"width"),this.containerHeight=Ge(e,"height"),this.chartWidth=ue(0,t.width||this.containerWidth||600),this.chartHeight=ue(0,p(t.height,this.containerHeight>19?this.containerHeight:400))},cloneRenderTo:function(t){var e=this.renderToClone,i=this.container;t?e&&(this.renderTo.appendChild(i),L(e),delete this.renderToClone):(i&&i.parentNode===this.renderTo&&this.renderTo.removeChild(i),this.renderToClone=e=this.renderTo.cloneNode(0),f(e,{position:"absolute",top:"-9999px",display:"block"}),oe.body.appendChild(e),i&&e.appendChild(i))},getContainer:function(){var e,r,s,o,a=this.options.chart;this.renderTo=e=a.renderTo,o="highcharts-"+Ee++,n(e)&&(this.renderTo=e=oe.getElementById(e)),e||M(13,!0),r=i(d(e,"data-highcharts-chart")),!isNaN(r)&&Re[r]&&Re[r].destroy(),d(e,"data-highcharts-chart",this.index),e.innerHTML="",e.offsetWidth||this.cloneRenderTo(),this.getChartSize(),r=this.chartWidth,s=this.chartHeight,this.container=e=g(ze,{className:"highcharts-container"+(a.className?" "+a.className:""),id:o},t({position:"relative",overflow:"hidden",width:r+"px",height:s+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},a.style),this.renderToClone||e),this._cursor=e.style.cursor,this.renderer=a.forExport?new ai(e,r,s,!0):new H(e,r,s),Me&&this.renderer.create(this,e,r,s)},getMargins:function(){var t,e=this.spacing,i=this.legend,n=this.margin,r=this.options.legend,s=p(r.margin,10),o=r.x,a=r.y,l=r.align,h=r.verticalAlign,d=this.titleOffset;this.resetMargins(),t=this.axisOffset,d&&!c(n[0])&&(this.plotTop=ue(this.plotTop,d+this.options.title.margin+e[0])),i.display&&!r.floating&&("right"===l?c(n[1])||(this.marginRight=ue(this.marginRight,i.legendWidth-o+s+e[1])):"left"===l?c(n[3])||(this.plotLeft=ue(this.plotLeft,i.legendWidth+o+s+e[3])):"top"===h?c(n[0])||(this.plotTop=ue(this.plotTop,i.legendHeight+a+s+e[0])):"bottom"!==h||c(n[2])||(this.marginBottom=ue(this.marginBottom,i.legendHeight-a+s+e[2]))),this.extraBottomMargin&&(this.marginBottom+=this.extraBottomMargin),this.extraTopMargin&&(this.plotTop+=this.extraTopMargin),this.hasCartesianSeries&&je(this.axes,function(t){t.getOffset()}),c(n[3])||(this.plotLeft+=t[3]),c(n[0])||(this.plotTop+=t[0]),c(n[2])||(this.marginBottom+=t[2]),c(n[1])||(this.marginRight+=t[1]),this.setChartSize()},reflow:function(t){var e=this,i=e.options.chart,n=e.renderTo,r=i.width||Ge(n,"width"),s=i.height||Ge(n,"height"),i=t?t.target:ae,n=function(){e.container&&(e.setSize(r,s,!1),e.hasUserSize=null)};e.hasUserSize||!r||!s||i!==ae&&i!==oe||((r!==e.containerWidth||s!==e.containerHeight)&&(clearTimeout(e.reflowTimeout),t?e.reflowTimeout=setTimeout(n,100):n()),e.containerWidth=r,e.containerHeight=s)},initReflow:function(){var t=this,e=function(e){t.reflow(e)};Ze(ae,"resize",e),Ze(t,"destroy",function(){Ke(ae,"resize",e)})},setSize:function(t,e,i){var n,r,s,o=this;o.isResizing+=1,s=function(){o&&Qe(o,"endResize",null,function(){o.isResizing-=1})},D(i,o),o.oldChartHeight=o.chartHeight,o.oldChartWidth=o.chartWidth,c(t)&&(o.chartWidth=n=ue(0,he(t)),o.hasUserSize=!!n),c(e)&&(o.chartHeight=r=ue(0,he(e))),($?ti:f)(o.container,{width:n+"px",height:r+"px"},$),o.setChartSize(!0),o.renderer.setSize(n,r,i),o.maxTicks=null,je(o.axes,function(t){t.isDirty=!0,t.setScale()}),je(o.series,function(t){t.isDirty=!0}),o.isDirtyLegend=!0,o.isDirtyBox=!0,o.getMargins(),o.redraw(i),o.oldChartHeight=null,Qe(o,"resize"),$===!1?s():setTimeout(s,$&&$.duration||500)},setChartSize:function(t){var e,i,n,r,s=this.inverted,o=this.renderer,a=this.chartWidth,l=this.chartHeight,h=this.options.chart,c=this.spacing,d=this.clipOffset;this.plotLeft=e=he(this.plotLeft),this.plotTop=i=he(this.plotTop),this.plotWidth=n=ue(0,he(a-e-this.marginRight)),this.plotHeight=r=ue(0,he(l-i-this.marginBottom)),this.plotSizeX=s?r:n,this.plotSizeY=s?n:r,this.plotBorderWidth=h.plotBorderWidth||0,this.spacingBox=o.spacingBox={x:c[3],y:c[0],width:a-c[3]-c[1],height:l-c[0]-c[2]},this.plotBox=o.plotBox={x:e,y:i,width:n,height:r},a=2*ce(this.plotBorderWidth/2),s=de(ue(a,d[3])/2),o=de(ue(a,d[0])/2),this.clipBox={x:s,y:o,width:ce(this.plotSizeX-ue(a,d[1])/2-s),height:ce(this.plotSizeY-ue(a,d[2])/2-o)},t||je(this.axes,function(t){t.setAxisSize(),t.setAxisTranslation()})},resetMargins:function(){var t=this.spacing,e=this.margin;this.plotTop=p(e[0],t[0]),this.marginRight=p(e[1],t[1]),this.marginBottom=p(e[2],t[2]),this.plotLeft=p(e[3],t[3]),this.axisOffset=[0,0,0,0],this.clipOffset=[0,0,0,0]},drawChartBox:function(){var t,e=this.options.chart,i=this.renderer,n=this.chartWidth,r=this.chartHeight,s=this.chartBackground,o=this.plotBackground,a=this.plotBorder,l=this.plotBGImage,h=e.borderWidth||0,c=e.backgroundColor,d=e.plotBackgroundColor,u=e.plotBackgroundImage,p=e.plotBorderWidth||0,f=this.plotLeft,g=this.plotTop,m=this.plotWidth,y=this.plotHeight,v=this.plotBox,x=this.clipRect,b=this.clipBox;t=h+(e.shadow?8:0),(h||c)&&(s?s.animate(s.crisp(null,null,null,n-t,r-t)):(s={fill:c||Be},h&&(s.stroke=e.borderColor,s["stroke-width"]=h),this.chartBackground=i.rect(t/2,t/2,n-t,r-t,e.borderRadius,h).attr(s).add().shadow(e.shadow))),d&&(o?o.animate(v):this.plotBackground=i.rect(f,g,m,y,0).attr({fill:d}).add().shadow(e.plotShadow)),u&&(l?l.animate(v):this.plotBGImage=i.image(u,f,g,m,y).add()),x?x.animate({width:b.width,height:b.height}):this.clipRect=i.clipRect(b),p&&(a?a.animate(a.crisp(null,f,g,m,y)):this.plotBorder=i.rect(f,g,m,y,0,-p).attr({stroke:e.plotBorderColor,"stroke-width":p,zIndex:1}).add()),this.isDirtyBox=!1},propFromSeries:function(){var t,e,i,n=this,r=n.options.chart,s=n.options.series;je(["inverted","angular","polar"],function(o){for(t=He[r.type||r.defaultSeriesType],i=n[o]||r[o]||t&&t.prototype[o],e=s&&s.length;!i&&e--;)(t=He[s[e].type])&&t.prototype[o]&&(i=!0);n[o]=i})},linkSeries:function(){var t=this,e=t.series;je(e,function(t){t.linkedSeries.length=0}),je(e,function(e){var i=e.options.linkedTo;n(i)&&(i=":previous"===i?t.series[e.index-1]:t.get(i))&&(i.linkedSeries.push(e),e.linkedParent=i)})},render:function(){var e,n=this,r=n.axes,s=n.renderer,o=n.options,a=o.labels,l=o.credits;n.setTitle(),n.legend=new fi(n,o.legend),n.getStacks(),je(r,function(t){t.setScale()}),n.getMargins(),n.maxTicks=null,je(r,function(t){t.setTickPositions(!0),t.setMaxTicks()}),n.adjustTickAmounts(),n.getMargins(),n.drawChartBox(),n.hasCartesianSeries&&je(r,function(t){t.render()}),n.seriesGroup||(n.seriesGroup=s.g("series-group").attr({zIndex:3}).add()),je(n.series,function(t){t.translate(),t.setTooltipPoints(),t.render()}),a.items&&je(a.items,function(e){var r=t(a.style,e.style),o=i(r.left)+n.plotLeft,l=i(r.top)+n.plotTop+12;delete r.left,delete r.top,s.text(e.html,o,l).attr({zIndex:2}).css(r).add()}),l.enabled&&!n.credits&&(e=l.href,n.credits=s.text(l.text,0,0).on("click",function(){e&&(parent.location.href=e)}).attr({align:l.position.align,zIndex:8}).css(l.style).add().align(l.position)),n.hasRendered=!0},destroy:function(){var t,e=this,i=e.axes,n=e.series,r=e.container,s=r&&r.parentNode;for(Qe(e,"destroy"),Re[e.index]=_,e.renderTo.removeAttribute("data-highcharts-chart"),Ke(e),t=i.length;t--;)i[t]=i[t].destroy();for(t=n.length;t--;)n[t]=n[t].destroy();je("title,subtitle,chartBackground,plotBackground,plotBGImage,plotBorder,seriesGroup,clipRect,credits,pointer,scroller,rangeSelector,legend,resetZoomButton,tooltip,renderer".split(","),function(t){var i=e[t];i&&i.destroy&&(e[t]=i.destroy())}),r&&(r.innerHTML="",Ke(r),s&&L(r));for(t in e)delete e[t]},isReadyToRender:function(){var t=this;return!Ae&&ae==ae.top&&"complete"!==oe.readyState||Me&&!ae.canvg?(Me?ci.push(function(){t.firstRender()},t.options.global.canvasToolsURL):oe.attachEvent("onreadystatechange",function(){oe.detachEvent("onreadystatechange",t.firstRender),"complete"===oe.readyState&&t.firstRender()}),!1):!0},firstRender:function(){var t=this,e=t.options,i=t.callback;t.isReadyToRender()&&(t.getContainer(),Qe(t,"init"),t.resetMargins(),t.setChartSize(),t.propFromSeries(),t.getAxes(),je(e.series||[],function(e){t.initSeries(e)}),t.linkSeries(),Qe(t,"beforeRender"),t.pointer=new ui(t,e),t.render(),t.renderer.draw(),i&&i.apply(t,[t]),je(t.callbacks,function(e){e.apply(t,[t])}),t.cloneRenderTo(!0),Qe(t,"load"))},splashArray:function(t,e){var i=e[t],i=r(i)?i:[i,i,i,i];return[p(e[t+"Top"],i[0]),p(e[t+"Right"],i[1]),p(e[t+"Bottom"],i[2]),p(e[t+"Left"],i[3])]}},N.prototype.callbacks=[];var hi=Highcharts.CenteredSeriesMixin={getCenter:function(){var t,e,n=this.options,r=this.chart,s=2*(n.slicedOffset||0),o=r.plotWidth-2*s,a=r.plotHeight-2*s,r=n.center,n=[p(r[0],"50%"),p(r[1],"50%"),n.size||"100%",n.innerSize||0],l=pe(o,a);return Ue(n,function(n,r){return e=/%$/.test(n),t=2>r||2===r&&e,(e?[o,a,l,l][r]*i(n)/100:n)+(t?s:0)})}},gi=function(){};gi.prototype={init:function(t,e,i){return this.series=t,this.applyOptions(e,i),this.pointAttr={},t.options.colorByPoint&&(e=t.options.colors||t.chart.options.colors,this.color=this.color||e[t.colorCounter++],t.colorCounter===e.length)&&(t.colorCounter=0),t.chart.pointCount++,this},applyOptions:function(e,i){var n=this.series,r=n.pointValKey,e=gi.prototype.optionsToObject.call(this,e);return t(this,e),this.options=this.options?t(this.options,e):e,r&&(this.y=this[r]),this.x===_&&n&&(this.x=i===_?n.autoIncrement():i),this},optionsToObject:function(t){var e={},i=this.series,n=i.pointArrayMap||["y"],r=n.length,o=0,a=0;if("number"==typeof t||null===t)e[n[0]]=t;else if(s(t))for(t.length>r&&(i=typeof t[0],"string"===i?e.name=t[0]:"number"===i&&(e.x=t[0]),o++);r>a;)e[n[a++]]=t[o++];else"object"==typeof t&&(e=t,t.dataLabels&&(i._hasPointLabels=!0),t.marker&&(i._hasPointMarkers=!0));return e},destroy:function(){var t,e=this.series.chart,i=e.hoverPoints;e.pointCount--,i&&(this.setState(),h(i,this),!i.length)&&(e.hoverPoints=null),this===e.hoverPoint&&this.onMouseOut(),(this.graphic||this.dataLabel)&&(Ke(this),this.destroyElements()),this.legendItem&&e.legend.destroyItem(this);for(t in this)this[t]=null},destroyElements:function(){for(var t,e="graphic,dataLabel,dataLabelUpper,group,connector,shadowGroup".split(","),i=6;i--;)t=e[i],this[t]&&(this[t]=this[t].destroy())},getLabelConfig:function(){return{x:this.category,y:this.y,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},select:function(t,e){var i=this,n=i.series,r=n.chart,t=p(t,!i.selected);i.firePointEvent(t?"select":"unselect",{accumulate:e},function(){i.selected=i.options.selected=t,n.options.data[Ye(i,n.data)]=i.options,i.setState(t&&"select"),e||je(r.getSelectedPoints(),function(t){t.selected&&t!==i&&(t.selected=t.options.selected=!1,n.options.data[Ye(t,n.data)]=t.options,t.setState(""),t.firePointEvent("unselect"))})})},onMouseOver:function(t){var e=this.series,i=e.chart,n=i.tooltip,r=i.hoverPoint;r&&r!==this&&r.onMouseOut(),this.firePointEvent("mouseOver"),n&&(!n.shared||e.noSharedTooltip)&&n.refresh(this,t),this.setState("hover"),i.hoverPoint=this},onMouseOut:function(){var t=this.series.chart,e=t.hoverPoints;e&&-1!==Ye(this,e)||(this.firePointEvent("mouseOut"),this.setState(),t.hoverPoint=null)},tooltipFormatter:function(t){var e=this.series,i=e.tooltipOptions,n=p(i.valueDecimals,""),r=i.valuePrefix||"",s=i.valueSuffix||"";return je(e.pointArrayMap||["y"],function(e){e="{point."+e,(r||s)&&(t=t.replace(e+"}",r+e+"}"+s)),t=t.replace(e+"}",e+":,."+n+"f}")}),b(t,{point:this,series:this.series})},firePointEvent:function(t,e,i){var n=this,r=this.series.options;(r.point.events[t]||n.options&&n.options.events&&n.options.events[t])&&this.importEvents(),"click"===t&&r.allowPointSelect&&(i=function(t){n.select(null,t.ctrlKey||t.metaKey||t.shiftKey)}),Qe(this,t,e,i)},importEvents:function(){if(!this.hasImportedEvents){var t,i=e(this.series.options.point,this.options).events;this.events=i;for(t in i)Ze(this,t,i[t]);this.hasImportedEvents=!0}},setState:function(t,i){var n=this.plotX,r=this.plotY,s=this.series,o=s.options.states,a=ii[s.type].marker&&s.options.marker,l=a&&!a.enabled,h=a&&a.states[t],c=h&&h.enabled===!1,d=s.stateMarkerGraphic,u=this.marker||{},p=s.chart,f=this.pointAttr,t=t||"",i=i&&d;t===this.state&&!i||this.selected&&"select"!==t||o[t]&&o[t].enabled===!1||t&&(c||l&&!h.enabled)||t&&u.states&&u.states[t]&&u.states[t].enabled===!1||(this.graphic?(o=a&&this.graphic.symbolName&&f[t].r,this.graphic.attr(e(f[t],o?{x:n-o,y:r-o,width:2*o,height:2*o}:{}))):(t&&h&&(o=h.radius,u=u.symbol||s.symbol,d&&d.currentSymbol!==u&&(d=d.destroy()),d?d[i?"animate":"attr"]({x:n-o,y:r-o}):(s.stateMarkerGraphic=d=p.renderer.symbol(u,n-o,r-o,2*o,2*o).attr(f[t]).add(s.markerGroup),d.currentSymbol=u)),d&&d[t&&p.isInsidePlot(n,r,p.inverted)?"show":"hide"]()),this.state=t)}};var mi=function(){};mi.prototype={isCartesian:!0,type:"line",pointClass:gi,sorted:!0,requireSorting:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor",r:"radius"},axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],init:function(e,i){var n,r,s=this,o=e.series,a=function(t,e){return p(t.options.index,t._i)-p(e.options.index,e._i)};s.chart=e,s.options=i=s.setOptions(i),s.linkedSeries=[],s.bindAxes(),t(s,{name:i.name,state:"",pointAttr:{},visible:i.visible!==!1,selected:i.selected===!0}),Me&&(i.animation=!1),r=i.events;for(n in r)Ze(s,n,r[n]);(r&&r.click||i.point&&i.point.events&&i.point.events.click||i.allowPointSelect)&&(e.runTrackerClick=!0),s.getColor(),s.getSymbol(),je(s.parallelArrays,function(t){s[t+"Data"]=[]}),s.setData(i.data,!1),s.isCartesian&&(e.hasCartesianSeries=!0),o.push(s),s._i=o.length-1,T(o,a),this.yAxis&&T(this.yAxis.series,a),je(o,function(t,e){t.index=e,t.name=t.name||"Series "+(e+1)})},bindAxes:function(){var t,e=this,i=e.options,n=e.chart;je(e.axisTypes||[],function(r){je(n[r],function(n){t=n.options,(i[r]===t.index||i[r]!==_&&i[r]===t.id||i[r]===_&&0===t.index)&&(n.series.push(e),e[r]=n,n.isDirty=!0)}),!e[r]&&e.optionalAxis!==r&&M(18,!0)})},updateParallelArrays:function(t,e){var i=t.series,n=arguments;je(i.parallelArrays,"number"==typeof e?function(n){var r="y"===n&&i.toYData?i.toYData(t):t[n];i[n+"Data"][e]=r}:function(t){Array.prototype[e].apply(i[t+"Data"],Array.prototype.slice.call(n,2))})},autoIncrement:function(){var t=this.options,e=this.xIncrement,e=p(e,t.pointStart,0);return this.pointInterval=p(this.pointInterval,t.pointInterval,1),this.xIncrement=e+this.pointInterval,e},getSegments:function(){var t,e=-1,i=[],n=this.points,r=n.length;if(r)if(this.options.connectNulls){for(t=r;t--;)null===n[t].y&&n.splice(t,1);n.length&&(i=[n])}else je(n,function(t,s){null===t.y?(s>e+1&&i.push(n.slice(e+1,s)),e=s):s===r-1&&i.push(n.slice(e+1,s+1))});this.segments=i},setOptions:function(t){var i=this.chart,n=i.options.plotOptions,i=i.userOptions||{},r=i.plotOptions||{},s=n[this.type];return this.userOptions=t,n=e(s,n.series,t),this.tooltipOptions=e(X.tooltip,X.plotOptions[this.type].tooltip,i.tooltip,r.series&&r.series.tooltip,r[this.type]&&r[this.type].tooltip,t.tooltip),null===s.marker&&delete n.marker,n},getColor:function(){var t,e=this.options,i=this.userOptions,n=this.chart.options.colors,r=this.chart.counters;t=e.color||ii[this.type].color,t||e.colorByPoint||(c(i._colorIndex)?e=i._colorIndex:(i._colorIndex=r.color,e=r.color++),t=n[e]),this.color=t,r.wrapColor(n.length)},getSymbol:function(){var t=this.userOptions,e=this.options.marker,i=this.chart,n=i.options.symbols,i=i.counters;this.symbol=e.symbol,this.symbol||(c(t._symbolIndex)?t=t._symbolIndex:(t._symbolIndex=i.symbol,t=i.symbol++),this.symbol=n[t]),/^url/.test(this.symbol)&&(e.radius=0),i.wrapSymbol(n.length)},drawLegendSymbol:li.drawLineMarker,setData:function(t,e){var i,r=this,a=r.points,l=r.options,h=r.chart,c=null,d=r.xAxis,u=d&&!!d.categories;r.xIncrement=null,r.pointRange=u?1:l.pointRange,r.colorCounter=0;var t=t||[],f=t.length;i=l.turboThreshold;var g=this.xData,m=this.yData,y=r.pointArrayMap,y=y&&y.length;if(je(this.parallelArrays,function(t){r[t+"Data"].length=0}),i&&f>i){for(i=0;null===c&&f>i;)c=t[i],i++;if(o(c)){for(u=p(l.pointStart,0),l=p(l.pointInterval,1),i=0;f>i;i++)g[i]=u,m[i]=t[i],u+=l;r.xIncrement=u}else if(s(c))if(y)for(i=0;f>i;i++)l=t[i],g[i]=l[0],m[i]=l.slice(1,y+1);else for(i=0;f>i;i++)l=t[i],g[i]=l[0],m[i]=l[1];else M(12)}else for(i=0;f>i;i++)t[i]!==_&&(l={series:r},r.pointClass.prototype.applyOptions.apply(l,[t[i]]),r.updateParallelArrays(l,i),u&&l.name)&&(d.names[l.x]=l.name);for(n(m[0])&&M(14,!0),r.data=[],r.options.data=t,i=a&&a.length||0;i--;)a[i]&&a[i].destroy&&a[i].destroy();d&&(d.minRange=d.userMinRange),r.isDirty=r.isDirtyData=h.isDirtyBox=!0,p(e,!0)&&h.redraw(!1)},processData:function(t){var e,i=this.xData,n=this.yData,r=i.length;e=0;var s,o,a=this.xAxis,l=this.options,h=l.cropThreshold,c=this.isCartesian;if(c&&!this.isDirty&&!a.isDirty&&!this.yAxis.isDirty&&!t)return!1;for(c&&this.sorted&&(!h||r>h||this.forceCrop)&&(t=a.min,a=a.max,i[r-1]a?(i=[],n=[]):(i[0]a)&&(e=this.cropData(this.xData,this.yData,t,a),i=e.xData,n=e.yData,e=e.start,s=!0)),a=i.length-1;a>=0;a--)r=i[a]-i[a-1],r>0&&(o===_||o>r)?o=r:0>r&&this.requireSorting&&M(15);this.cropped=s,this.cropStart=e,this.processedXData=i,this.processedYData=n,null===l.pointRange&&(this.pointRange=o||1),this.closestPointRange=o},cropData:function(t,e,i,n){var r,s=t.length,o=0,a=s,l=p(this.cropShoulder,1);for(r=0;s>r;r++)if(t[r]>=i){o=ue(0,r-l);break}for(;s>r;r++)if(t[r]>n){a=r+l;break}return{xData:t.slice(o,a),yData:e.slice(o,a),start:o,end:a}},generatePoints:function(){var t,e,i,n,r=this.options.data,s=this.data,o=this.processedXData,a=this.processedYData,l=this.pointClass,h=o.length,c=this.cropStart||0,d=this.hasGroupedData,p=[];for(s||d||(s=[],s.length=r.length,s=this.data=s),n=0;h>n;n++)e=c+n,d?p[n]=(new l).init(this,[o[n]].concat(u(a[n]))):(s[e]?i=s[e]:r[e]!==_&&(s[e]=i=(new l).init(this,r[e],o[n])),p[n]=i);if(s&&(h!==(t=s.length)||d))for(n=0;t>n;n++)n===c&&!d&&(n+=h),s[n]&&(s[n].destroyElements(),s[n].plotX=_);this.data=s,this.points=p},setStackedPoints:function(){if(this.options.stacking&&(this.visible===!0||this.chart.options.chart.ignoreHiddenSeries===!1)){var t,e,i,n,r,s=this.processedXData,o=this.processedYData,a=[],l=o.length,h=this.options,c=h.threshold,d=h.stack,h=h.stacking,u=this.stackKey,p="-"+u,f=this.negStacks,g=this.yAxis,m=g.stacks,y=g.oldStacks;for(i=0;l>i;i++)n=s[i],r=o[i],e=(t=f&&c>r)?p:u,m[e]||(m[e]={}),m[e][n]||(y[e]&&y[e][n]?(m[e][n]=y[e][n],m[e][n].total=null):m[e][n]=new B(g,g.options.stackLabels,t,n,d,h)),e=m[e][n],e.points[this.index]=[e.cum||0],"percent"===h?(t=t?u:p,f&&m[t]&&m[t][n]?(t=m[t][n],e.total=t.total=ue(t.total,e.total)+fe(r)||0):e.total+=fe(r)||0):e.total+=r||0,e.cum=(e.cum||0)+(r||0),e.points[this.index].push(e.cum),a[i]=e.cum;"percent"===h&&(g.usePercentage=!0),this.stackedYData=a,g.oldStacks={}}},setPercentStacks:function(){var t=this,e=t.stackKey,i=t.yAxis.stacks;je([e,"-"+e],function(e){for(var n,r,s,o=t.xData.length;o--;)r=t.xData[o],n=(s=i[e]&&i[e][r])&&s.points[t.index],(r=n)&&(s=s.total?100/s.total:0,r[0]=I(r[0]*s),r[1]=I(r[1]*s),t.stackedYData[o]=r[1])})},getExtremes:function(t){var e,i=this.yAxis,n=this.processedXData,r=[],s=0;e=this.xAxis.getExtremes();var o,a,l,h,c=e.min,d=e.max,t=t||this.stackedYData||this.processedYData;for(e=t.length,h=0;e>h;h++)if(a=n[h],l=t[h],o=null!==l&&l!==_&&(!i.isLog||l.length||l>0),a=this.getExtremesFromAll||this.cropped||(n[h+1]||a)>=c&&(n[h-1]||a)<=d,o&&a)if(o=l.length)for(;o--;)null!==l[o]&&(r[s++]=l[o]);else r[s++]=l;this.dataMin=p(void 0,C(r)),this.dataMax=p(void 0,P(r))},translate:function(){this.processedXData||this.processData(),this.generatePoints();for(var t=this.options,e=t.stacking,i=this.xAxis,n=i.categories,r=this.yAxis,s=this.points,a=s.length,l=!!this.modifyValue,h=t.pointPlacement,d="between"===h||o(h),u=t.threshold,t=0;a>t;t++){var f=s[t],g=f.x,m=f.y,y=f.low,v=e&&r.stacks[(this.negStacks&&u>m?"-":"")+this.stackKey];r.isLog&&0>=m&&(f.y=m=null),f.plotX=i.translate(g,0,0,0,1,h,"flags"===this.type),e&&this.visible&&v&&v[g]&&(v=v[g],m=v.points[this.index],y=m[0],m=m[1],0===y&&(y=p(u,r.min)),r.isLog&&0>=y&&(y=null),f.total=f.stackTotal=v.total,f.percentage="percent"===e&&f.y/v.total*100,f.stackY=m,v.setOffset(this.pointXOffset||0,this.barW||0)),f.yBottom=c(y)?r.translate(y,0,1,0,1):null,l&&(m=this.modifyValue(m,f)),f.plotY="number"==typeof m&&1/0!==m?r.translate(m,0,1,0,1):_,f.clientX=d?i.translate(g,0,0,0,1):f.plotX,f.negative=f.y<(u||0),f.category=n&&n[f.x]!==_?n[f.x]:f.x}this.getSegments()},setTooltipPoints:function(t){var e,i,n,r,s=[],o=this.xAxis,a=o&&o.getExtremes(),l=o?o.tooltipLen||o.len:this.chart.plotSizeX,h=[];if(this.options.enableMouseTracking!==!1){for(t&&(this.tooltipPoints=null),je(this.segments||this.points,function(t){s=s.concat(t)}),o&&o.reversed&&(s=s.reverse()),this.orderTooltipPoints&&this.orderTooltipPoints(s),t=s.length,r=0;t>r;r++)if(o=s[r],e=o.x,e>=a.min&&e<=a.max)for(n=s[r+1],e=i===_?0:i+1,i=s[r+1]?pe(ue(0,ce((o.clientX+(n?n.wrappedClientX||n.clientX:l))/2)),l):l;e>=0&&i>=e;)h[e++]=o;this.tooltipPoints=h}},tooltipHeaderFormatter:function(t){var e,i=this.tooltipOptions,n=i.dateTimeLabelFormats,r=i.xDateFormat||n.year,s=this.xAxis,a=s&&"datetime"===s.options.type,i=i.headerFormat,s=s&&s.closestPointRange;if(a&&!r)if(s){for(e in j)if(j[e]>=s){r=n[e];break}}else r=n.day;return a&&r&&o(t.key)&&(i=i.replace("{point.key}","{point.key:"+r+"}")),b(i,{point:t,series:this})},onMouseOver:function(){var t=this.chart,e=t.hoverSeries;e&&e!==this&&e.onMouseOut(),this.options.events.mouseOver&&Qe(this,"mouseOver"),this.setState("hover"),t.hoverSeries=this},onMouseOut:function(){var t=this.options,e=this.chart,i=e.tooltip,n=e.hoverPoint;n&&n.onMouseOut(),this&&t.events.mouseOut&&Qe(this,"mouseOut"),i&&!t.stickyTracking&&(!i.shared||this.noSharedTooltip)&&i.hide(),this.setState(),e.hoverSeries=null},animate:function(e){var i,n=this,s=n.chart,o=s.renderer;i=n.options.animation;var a,l=s.clipBox,h=s.inverted;i&&!r(i)&&(i=ii[n.type].animation),a="_sharedClip"+i.duration+i.easing,e?(e=s[a],i=s[a+"m"],e||(s[a]=e=o.clipRect(t(l,{width:0})),s[a+"m"]=i=o.clipRect(-99,h?-s.plotLeft:-s.plotTop,99,h?s.chartWidth:s.chartHeight)),n.group.clip(e),n.markerGroup.clip(i),n.sharedClipKey=a):((e=s[a])&&(e.animate({width:s.plotSizeX},i),s[a+"m"].animate({width:s.plotSizeX+99},i)),n.animate=null,n.animationTimeout=setTimeout(function(){n.afterAnimate()},i.duration))},afterAnimate:function(){var t=this.chart,e=this.sharedClipKey,i=this.group;i&&this.options.clip!==!1&&(i.clip(t.clipRect),this.markerGroup.clip()),setTimeout(function(){e&&t[e]&&(t[e]=t[e].destroy(),t[e+"m"]=t[e+"m"].destroy())},100)},drawPoints:function(){var e,i,n,r,s,o,a,l,h,c,d=this.points,u=this.chart,f=this.options.marker,g=this.pointAttr[""],m=this.markerGroup;if(f.enabled||this._hasPointMarkers)for(r=d.length;r--;)s=d[r],i=ce(s.plotX),n=s.plotY,h=s.graphic,a=s.marker||{},e=f.enabled&&a.enabled===_||a.enabled,c=u.isInsidePlot(he(i),n,u.inverted),e&&n!==_&&!isNaN(n)&&null!==s.y?(e=s.pointAttr[s.selected?"select":""]||g,o=e.r,a=p(a.symbol,this.symbol),l=0===a.indexOf("url"),h?h.attr({visibility:c?Ae?"inherit":"visible":"hidden"}).animate(t({x:i-o,y:n-o},h.symbolName?{width:2*o,height:2*o}:{})):c&&(o>0||l)&&(s.graphic=u.renderer.symbol(a,i-o,n-o,2*o,2*o).attr(e).add(m))):h&&(s.graphic=h.destroy())},convertAttribs:function(t,e,i,n){var r,s,o=this.pointAttrToOptions,a={},t=t||{},e=e||{},i=i||{},n=n||{};for(r in o)s=o[r],a[r]=p(t[s],e[r],i[r],n[r]);return a},getAttribs:function(){var e,i=this,n=i.options,r=ii[i.type].marker?n.marker:n,s=r.states,o=s.hover,a=i.color;e={stroke:a,fill:a};var l,h,d=i.points||[],u=[],p=i.pointAttrToOptions;l=n.turboThreshold;var f,g=n.negativeColor,m=r.lineColor;if(n.marker?(o.radius=o.radius||r.radius+2,o.lineWidth=o.lineWidth||r.lineWidth+1):o.color=o.color||oi(o.color||a).brighten(o.brightness).get(),u[""]=i.convertAttribs(r,e),je(["hover","select"],function(t){u[t]=i.convertAttribs(s[t],u[""])}),i.pointAttr=u,a=d.length,!l||l>a)for(;a--;){if(l=d[a],(r=l.options&&l.options.marker||l.options)&&r.enabled===!1&&(r.radius=0),l.negative&&g&&(l.color=l.fillColor=g),e=n.colorByPoint||l.color,l.options)for(f in p)c(r[p[f]])&&(e=!0);e?(r=r||{},h=[],s=r.states||{},e=s.hover=s.hover||{},n.marker||(e.color=e.color||o.color||oi(l.color).brighten(e.brightness||o.brightness).get()),h[""]=i.convertAttribs(t({color:l.color,fillColor:l.color,lineColor:null===m?l.color:_},r),u[""]),h.hover=i.convertAttribs(s.hover,u.hover,h[""]),h.select=i.convertAttribs(s.select,u.select,h[""])):h=u,l.pointAttr=h}},destroy:function(){var t,e,i,n,r,s=this,o=s.chart,a=/AppleWebKit\/533/.test(xe),l=s.data||[];for(Qe(s,"destroy"),Ke(s),je(s.axisTypes||[],function(t){(r=s[t])&&(h(r.series,s),r.isDirty=r.forceRedraw=!0)}),s.legendItem&&s.chart.legend.destroyItem(s),e=l.length;e--;)(i=l[e])&&i.destroy&&i.destroy();s.points=null,clearTimeout(s.animationTimeout),je("area,graph,dataLabelsGroup,group,markerGroup,tracker,graphNeg,areaNeg,posClip,negClip".split(","),function(e){s[e]&&(t=a&&"group"===e?"hide":"destroy",s[e][t]())}),o.hoverSeries===s&&(o.hoverSeries=null),h(o.series,s);for(n in s)delete s[n]},getSegmentPath:function(t){var e=this,i=[],n=e.options.step;return je(t,function(r,s){var o,a=r.plotX,l=r.plotY; +e.getPointSpline?i.push.apply(i,e.getPointSpline(t,r,s)):(i.push(s?"L":"M"),n&&s&&(o=t[s-1],"right"===n?i.push(o.plotX,l):"center"===n?i.push((o.plotX+a)/2,o.plotY,(o.plotX+a)/2,l):i.push(a,o.plotY)),i.push(r.plotX,r.plotY))}),i},getGraphPath:function(){var t,e=this,i=[],n=[];return je(e.segments,function(r){t=e.getSegmentPath(r),r.length>1?i=i.concat(t):n.push(r[0])}),e.singlePoints=n,e.graphPath=i},drawGraph:function(){var t=this,e=this.options,i=[["graph",e.lineColor||this.color]],n=e.lineWidth,r=e.dashStyle,s="square"!==e.linecap,o=this.getGraphPath(),a=e.negativeColor;a&&i.push(["graphNeg",a]),je(i,function(i,a){var l=i[0],h=t[l];h?(ei(h),h.animate({d:o})):n&&o.length&&(h={stroke:i[1],"stroke-width":n,zIndex:1},r?h.dashstyle=r:s&&(h["stroke-linecap"]=h["stroke-linejoin"]="round"),t[l]=t.chart.renderer.path(o).attr(h).add(t.group).shadow(!a&&e.shadow))})},clipNeg:function(){var t,e=this.options,i=this.chart,n=i.renderer,r=e.negativeColor||e.negativeFillColor,s=this.graph,o=this.area,a=this.posClip,l=this.negClip;t=i.chartWidth;var h=i.chartHeight,c=ue(t,h),d=this.yAxis;r&&(s||o)&&(r=he(d.toPixels(e.threshold||0,!0)),0>r&&(c-=r),e={x:0,y:0,width:c,height:r},c={x:0,y:r,width:c,height:c},i.inverted&&(e.height=c.y=i.plotWidth-r,n.isVML&&(e={x:i.plotWidth-r-i.plotLeft,y:0,width:t,height:h},c={x:r+i.plotLeft-t,y:0,width:i.plotLeft+r,height:t})),d.reversed?(i=c,t=e):(i=e,t=c),a?(a.animate(i),l.animate(t)):(this.posClip=a=n.clipRect(i),this.negClip=l=n.clipRect(t),s&&this.graphNeg&&(s.clip(a),this.graphNeg.clip(l)),o&&(o.clip(a),this.areaNeg.clip(l))))},invertGroups:function(){function t(){var t={width:e.yAxis.len,height:e.xAxis.len};je(["group","markerGroup"],function(i){e[i]&&e[i].attr(t).invert()})}var e=this,i=e.chart;e.xAxis&&(Ze(i,"resize",t),Ze(e,"destroy",function(){Ke(i,"resize",t)}),t(),e.invertGroups=t)},plotGroup:function(t,e,i,n,r){var s=this[t],o=!s;return o&&(this[t]=s=this.chart.renderer.g(e).attr({visibility:i,zIndex:n||.1}).add(r)),s[o?"attr":"animate"](this.getPlotBox()),s},getPlotBox:function(){return{translateX:this.xAxis?this.xAxis.left:this.chart.plotLeft,translateY:this.yAxis?this.yAxis.top:this.chart.plotTop,scaleX:1,scaleY:1}},render:function(){var t,e=this.chart,i=this.options,n=i.animation&&!!this.animate&&e.renderer.isSVG,r=this.visible?"visible":"hidden",s=i.zIndex,o=this.hasRendered,a=e.seriesGroup;t=this.plotGroup("group","series",r,s,a),this.markerGroup=this.plotGroup("markerGroup","markers",r,s,a),n&&this.animate(!0),this.getAttribs(),t.inverted=this.isCartesian?e.inverted:!1,this.drawGraph&&(this.drawGraph(),this.clipNeg()),this.drawDataLabels&&this.drawDataLabels(),this.visible&&this.drawPoints(),this.options.enableMouseTracking!==!1&&this.drawTracker(),e.inverted&&this.invertGroups(),i.clip!==!1&&!this.sharedClipKey&&!o&&t.clip(e.clipRect),n?this.animate():o||this.afterAnimate(),this.isDirty=this.isDirtyData=!1,this.hasRendered=!0},redraw:function(){var t=this.chart,e=this.isDirtyData,i=this.group,n=this.xAxis,r=this.yAxis;i&&(t.inverted&&i.attr({width:t.plotWidth,height:t.plotHeight}),i.animate({translateX:p(n&&n.left,t.plotLeft),translateY:p(r&&r.top,t.plotTop)})),this.translate(),this.setTooltipPoints(!0),this.render(),e&&Qe(this,"updatedData")},setState:function(t){var e=this.options,i=this.graph,n=this.graphNeg,r=e.states,e=e.lineWidth,t=t||"";this.state!==t&&(this.state=t,r[t]&&r[t].enabled===!1||(t&&(e=r[t].lineWidth||e+1),i&&!i.dashstyle&&(t={"stroke-width":e},i.attr(t),n&&n.attr(t))))},setVisible:function(t,e){var i,n=this,r=n.chart,s=n.legendItem,o=r.options.chart.ignoreHiddenSeries,a=n.visible;i=(n.visible=t=n.userOptions.visible=t===_?!a:t)?"show":"hide",je(["group","dataLabelsGroup","markerGroup","tracker"],function(t){n[t]&&n[t][i]()}),r.hoverSeries===n&&n.onMouseOut(),s&&r.legend.colorizeItem(n,t),n.isDirty=!0,n.options.stacking&&je(r.series,function(t){t.options.stacking&&t.visible&&(t.isDirty=!0)}),je(n.linkedSeries,function(e){e.setVisible(t,!1)}),o&&(r.isDirtyBox=!0),e!==!1&&r.redraw(),Qe(n,i)},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(t){this.selected=t=t===_?!this.selected:t,this.checkbox&&(this.checkbox.checked=t),Qe(this,t?"select":"unselect")},drawTracker:Xe.drawTrackerGraph},t(N.prototype,{addSeries:function(t,e,i){var n,r=this;return t&&(e=p(e,!0),Qe(r,"addSeries",{options:t},function(){n=r.initSeries(t),r.isDirtyLegend=!0,r.linkSeries(),e&&r.redraw(i)})),n},addAxis:function(t,i,n,r){var s=i?"xAxis":"yAxis",o=this.options;new z(this,e(t,{index:this[s].length,isX:i})),o[s]=u(o[s]||{}),o[s].push(t),p(n,!0)&&this.redraw(r)},showLoading:function(e){var i=this.options,n=this.loadingDiv,r=i.loading;n||(this.loadingDiv=n=g(ze,{className:"highcharts-loading"},t(r.style,{zIndex:10,display:Be}),this.container),this.loadingSpan=g("span",null,r.labelStyle,n)),this.loadingSpan.innerHTML=e||i.lang.loading,this.loadingShown||(f(n,{opacity:0,display:"",left:this.plotLeft+"px",top:this.plotTop+"px",width:this.plotWidth+"px",height:this.plotHeight+"px"}),ti(n,{opacity:r.style.opacity},{duration:r.showDuration||0}),this.loadingShown=!0)},hideLoading:function(){var t=this.options,e=this.loadingDiv;e&&ti(e,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){f(e,{display:Be})}}),this.loadingShown=!1}}),t(gi.prototype,{update:function(t,e,i){var n,s=this,o=s.series,a=s.graphic,l=o.data,h=o.chart,c=o.options,e=p(e,!0);s.firePointEvent("update",{options:t},function(){s.applyOptions(t),r(t)&&(o.getAttribs(),a&&(t&&t.marker&&t.marker.symbol?s.graphic=a.destroy():a.attr(s.pointAttr[s.state||""])),t&&t.dataLabels&&s.dataLabel&&(s.dataLabel=s.dataLabel.destroy())),n=Ye(s,l),o.updateParallelArrays(s,n),c.data[n]=s.options,o.isDirty=o.isDirtyData=!0,!o.fixedBox&&o.hasCartesianSeries&&(h.isDirtyBox=!0),"point"===c.legendType&&h.legend.destroyItem(s),e&&h.redraw(i)})},remove:function(t,e){var i,n=this,r=n.series,s=r.points,o=r.chart,a=r.data;D(e,o),t=p(t,!0),n.firePointEvent("remove",null,function(){i=Ye(n,a),a.length===s.length&&s.splice(i,1),a.splice(i,1),r.options.data.splice(i,1),r.updateParallelArrays(n,"splice",i,1),n.destroy(),r.isDirty=!0,r.isDirtyData=!0,t&&o.redraw()})}}),t(mi.prototype,{addPoint:function(t,e,i,n){var r,s=this.options,o=this.data,a=this.graph,l=this.area,h=this.chart,c=this.xAxis&&this.xAxis.names,d=a&&a.shift||0,u=s.data,f=this.xData;if(D(n,h),i&&je([a,l,this.graphNeg,this.areaNeg],function(t){t&&(t.shift=d+1)}),l&&(l.isArea=!0),e=p(e,!0),n={series:this},this.pointClass.prototype.applyOptions.apply(n,[t]),a=n.x,l=f.length,this.requireSorting&&aa;)l--;this.updateParallelArrays(n,"splice",l),this.updateParallelArrays(n,l),c&&(c[a]=n.name),u.splice(l,0,t),r&&(this.data.splice(l,0,null),this.processData()),"point"===s.legendType&&this.generatePoints(),i&&(o[0]&&o[0].remove?o[0].remove(!1):(o.shift(),this.updateParallelArrays(n,"shift"),u.shift())),this.isDirtyData=this.isDirty=!0,e&&(this.getAttribs(),h.redraw())},remove:function(t,e){var i=this,n=i.chart,t=p(t,!0);i.isRemoving||(i.isRemoving=!0,Qe(i,"remove",null,function(){i.destroy(),n.isDirtyLegend=n.isDirtyBox=!0,n.linkSeries(),t&&n.redraw(e)})),i.isRemoving=!1},update:function(i,n){var r,s=this.chart,o=this.type,a=He[o].prototype,i=e(this.userOptions,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},i);this.remove(!1);for(r in a)a.hasOwnProperty(r)&&(this[r]=_);t(this,He[i.type||o].prototype),this.init(s,i),p(n,!0)&&s.redraw(!1)}}),t(z.prototype,{update:function(i,n){var r=this.chart,i=r.options[this.coll][this.options.index]=e(this.userOptions,i);this.destroy(!0),this._addedPlotLB=this.userMin=this.userMax=_,this.init(r,t(i,{events:_})),r.isDirtyBox=!0,p(n,!0)&&r.redraw()},remove:function(t){var e=this.chart,i=this.coll;je(this.series,function(t){t.remove(!1)}),h(e.axes,this),h(e[i],this),e.options[i].splice(this.options.index,1),je(e[i],function(t,e){t.options.index=e}),this.destroy(),e.isDirtyBox=!0,p(t,!0)&&e.redraw()},setTitle:function(t,e){this.update({title:t},e)},setCategories:function(t,e){this.update({categories:t},e)}});var yi=m(mi);He.line=yi,ii.area=e(We,{threshold:0});var vi=m(mi,{type:"area",getSegments:function(){var t,e,i,n,r,s=[],o=[],a=[],l=this.xAxis,h=this.yAxis,c=h.stacks[this.stackKey],d={},u=this.points,p=this.options.connectNulls;if(this.options.stacking&&!this.cropped){for(n=0;n=0;e--)s=p(t[e].yBottom,o),et&&r>l?(r=ue(t,l),o=2*l-r):t>r&&l>r&&(r=pe(t,l),o=2*l-r),o>c&&o>l?(o=ue(c,l),r=2*l-o):c>o&&l>o&&(o=pe(c,l),r=2*l-o),e.rightContX=s,e.rightContY=o}return i?(e=["C",h.rightContX||h.plotX,h.rightContY||h.plotY,n||a,r||l,a,l],h.rightContX=h.rightContY=null):e=["M",a,l],e}}),He.spline=yi,ii.areaspline=e(ii.area),vi=vi.prototype,yi=m(yi,{type:"areaspline",closedStacks:!0,getSegmentPath:vi.getSegmentPath,closeSegment:vi.closeSegment,drawGraph:vi.drawGraph,drawLegendSymbol:li.drawRectangle}),He.areaspline=yi,ii.column=e(We,{borderColor:"#FFFFFF",borderWidth:1,borderRadius:0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{brightness:.1,shadow:!1},select:{color:"#C0C0C0",borderColor:"#000000",shadow:!1}},dataLabels:{align:null,verticalAlign:null,y:null},stickyTracking:!1,threshold:0}),yi=m(mi,{type:"column",pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color",r:"borderRadius"},cropShoulder:0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){mi.prototype.init.apply(this,arguments);var t=this,e=t.chart;e.hasRendered&&je(e.series,function(e){e.type===t.type&&(e.isDirty=!0)})},getColumnMetrics:function(){var t,e,i=this,n=i.options,r=i.xAxis,s=i.yAxis,o=r.reversed,a={},l=0;n.grouping===!1?l=1:je(i.chart.series,function(n){var r=n.options,o=n.yAxis;n.type===i.type&&n.visible&&s.len===o.len&&s.pos===o.pos&&(r.stacking?(t=n.stackKey,a[t]===_&&(a[t]=l++),e=a[t]):r.grouping!==!1&&(e=l++),n.columnIndex=e)});var r=pe(fe(r.transA)*(r.ordinalSlope||n.pointRange||r.closestPointRange||1),r.len),h=r*n.groupPadding,d=(r-2*h)/l,u=n.pointWidth,n=c(u)?(d-u)/2:d*n.pointPadding,u=p(u,d-2*n);return i.columnMetrics={width:u,offset:n+(h+((o?l-(i.columnIndex||0):i.columnIndex)||0)*d-r/2)*(o?-1:1)}},translate:function(){var t=this.chart,e=this.options,i=e.borderWidth,n=this.yAxis,r=this.translatedThreshold=n.getThreshold(e.threshold),s=p(e.minPointLength,5),e=this.getColumnMetrics(),o=e.width,a=this.barW=de(ue(o,1+2*i)),l=this.pointXOffset=e.offset,h=-(i%2?.5:0),c=i%2?.5:1;t.renderer.isVML&&t.inverted&&(c+=1),mi.prototype.translate.apply(this),je(this.points,function(t){var e,i=p(t.yBottom,r),d=pe(ue(-999-i,t.plotY),n.len+999+i),u=t.plotX+l,f=a,g=pe(d,i),d=ue(d,i)-g;fe(d)s?i-s:r-(n.translate(t.y,0,1,0,1)<=r?s:0))),t.barX=u,t.pointWidth=o,i=fe(u)<.5,f=he(u+f)+h,u=he(u)+h,f-=u,e=fe(g)<.5,d=he(g+d)+c,g=he(g)+c,d-=g,i&&(u+=1,f-=1),e&&(g-=1,d+=1),t.shapeType="rect",t.shapeArgs={x:u,y:g,width:f,height:d}})},getSymbol:Oe,drawLegendSymbol:li.drawRectangle,drawGraph:Oe,drawPoints:function(){var t,i=this,n=this.chart,r=i.options,s=n.renderer,o=n.options.animationLimit||250;je(i.points,function(a){var l=a.plotY,h=a.graphic;l===_||isNaN(l)||null===a.y?h&&(a.graphic=h.destroy()):(t=a.shapeArgs,h?(ei(h),h[n.pointCount{series.name}
    ',pointFormat:"x: {point.x}
    y: {point.y}
    ",followPointer:!0},stickyTracking:!1}),yi=m(mi,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["markerGroup"],takeOrdinalPosition:!1,drawTracker:Xe.drawTrackerPoint,drawGraph:function(){this.options.lineWidth&&mi.prototype.drawGraph.call(this)},setTooltipPoints:Oe}),He.scatter=yi,ii.pie=e(We,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return this.point.name}},ignoreHiddenPoint:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}}),We={type:"pie",isCartesian:!1,pointClass:m(gi,{init:function(){gi.prototype.init.apply(this,arguments);var e,i=this;return i.y<0&&(i.y=null),t(i,{visible:i.visible!==!1,name:p(i.name,"Slice")}),e=function(t){i.slice("select"===t.type)},Ze(i,"select",e),Ze(i,"unselect",e),i},setVisible:function(t){var e,i=this,n=i.series,r=n.chart;i.visible=i.options.visible=t=t===_?!i.visible:t,n.options.data[Ye(i,n.data)]=i.options,e=t?"show":"hide",je(["graphic","dataLabel","connector","shadowGroup"],function(t){i[t]&&i[t][e]()}),i.legendItem&&r.legend.colorizeItem(i,t),!n.isDirty&&n.options.ignoreHiddenPoint&&(n.isDirty=!0,r.redraw())},slice:function(t,e,i){var n=this.series;D(i,n.chart),p(e,!0),this.sliced=this.options.sliced=t=c(t)?t:!this.sliced,n.options.data[Ye(this,n.data)]=this.options,t=t?this.slicedTranslation:{translateX:0,translateY:0},this.graphic.animate(t),this.shadowGroup&&this.shadowGroup.animate(t)}}),requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},getColor:Oe,animate:function(t){var e=this,i=e.points,n=e.startAngleRad;t||(je(i,function(t){var i=t.graphic,t=t.shapeArgs;i&&(i.attr({r:e.center[3]/2,start:n,end:n}),i.animate({r:t.r,start:t.start,end:t.end},e.options.animation))}),e.animate=null)},setData:function(t,e){mi.prototype.setData.call(this,t,!1),this.processData(),this.generatePoints(),p(e,!0)&&this.chart.redraw()},generatePoints:function(){var t,e,i,n,r=0,s=this.options.ignoreHiddenPoint;for(mi.prototype.generatePoints.call(this),e=this.points,i=e.length,t=0;i>t;t++)n=e[t],r+=s&&!n.visible?0:n.y;for(this.total=r,t=0;i>t;t++)n=e[t],n.percentage=r>0?n.y/r*100:0,n.total=r},translate:function(t){this.generatePoints();var e,i,n,r,s,o=0,a=this.options,l=a.slicedOffset,h=l+a.borderWidth,c=a.startAngle||0,d=this.startAngleRad=ye/180*(c-90),c=(this.endAngleRad=ye/180*((a.endAngle||c+360)-90))-d,u=this.points,p=a.dataLabels.distance,a=a.ignoreHiddenPoint,f=u.length;for(t||(this.center=t=this.getCenter()),this.getX=function(e,i){return n=le.asin((e-t[1])/(t[2]/2+p)),t[0]+(i?-1:1)*ge(n)*(t[2]/2+p)},r=0;f>r;r++)s=u[r],e=d+o*c,(!a||s.visible)&&(o+=s.percentage/100),i=d+o*c,s.shapeType="arc",s.shapeArgs={x:t[0],y:t[1],r:t[2]/2,innerR:t[3]/2,start:he(1e3*e)/1e3,end:he(1e3*i)/1e3},n=(i+e)/2,n>.75*c&&(n-=2*ye),s.slicedTranslation={translateX:he(ge(n)*l),translateY:he(me(n)*l)},e=ge(n)*t[2]/2,i=me(n)*t[2]/2,s.tooltipPos=[t[0]+.7*e,t[1]+.7*i],s.half=-ye/2>n||n>ye/2?1:0,s.angle=n,h=pe(h,p/2),s.labelPos=[t[0]+e+ge(n)*p,t[1]+i+me(n)*p,t[0]+e+ge(n)*h,t[1]+i+me(n)*h,t[0]+e,t[1]+i,0>p?"center":s.half?"right":"left",n]},setTooltipPoints:Oe,drawGraph:null,drawPoints:function(){var e,i,n,r,s=this,o=s.chart.renderer,a=s.options.shadow;a&&!s.shadowGroup&&(s.shadowGroup=o.g("shadow").add(s.group)),je(s.points,function(l){i=l.graphic,r=l.shapeArgs,n=l.shadowGroup,a&&!n&&(n=l.shadowGroup=o.g("shadow").add(s.shadowGroup)),e=l.sliced?l.slicedTranslation:{translateX:0,translateY:0},n&&n.attr(e),i?i.animate(t(r,e)):l.graphic=i=o.arc(r).setRadialReference(s.center).attr(l.pointAttr[l.selected?"select":""]).attr({"stroke-linejoin":"round"}).attr(e).add(s.group).shadow(a,n),void 0!==l.visible&&l.setVisible(l.visible)})},sortByAngle:function(t,e){t.sort(function(t,i){return void 0!==t.angle&&(i.angle-t.angle)*e})},drawTracker:Xe.drawTrackerPoint,drawLegendSymbol:li.drawRectangle,getCenter:hi.getCenter,getSymbol:Oe},We=m(mi,We),He.pie=We,mi.prototype.drawDataLabels=function(){var i,n,r,s,o=this,a=o.options,l=a.cursor,h=a.dataLabels,a=o.points;(h.enabled||o._hasPointLabels)&&(o.dlProcessOptions&&o.dlProcessOptions(h),s=o.plotGroup("dataLabelsGroup","data-labels",o.visible?"visible":"hidden",h.zIndex||6),n=h,je(a,function(a){var d,u,f,g=a.dataLabel,m=a.connector,y=!0;if(i=a.options&&a.options.dataLabels,d=p(i&&i.enabled,n.enabled),g&&!d)a.dataLabel=g.destroy();else if(d){if(h=e(n,i),d=h.rotation,u=a.getLabelConfig(),r=h.format?b(h.format,u):h.formatter.call(u,h),h.style.color=p(h.color,h.style.color,o.color,"black"),g)c(r)?(g.attr({text:r}),y=!1):(a.dataLabel=g=g.destroy(),m&&(a.connector=m.destroy()));else if(c(r)){g={fill:h.backgroundColor,stroke:h.borderColor,"stroke-width":h.borderWidth,r:h.borderRadius||0,rotation:d,padding:h.padding,zIndex:1};for(f in g)g[f]===_&&delete g[f];g=a.dataLabel=o.chart.renderer[d?"text":"label"](r,0,-999,null,null,null,h.useHTML).attr(g).css(t(h.style,l&&{cursor:l})).add(s).shadow(h.shadow)}g&&o.alignDataLabel(a,g,h,null,y)}}))},mi.prototype.alignDataLabel=function(e,i,n,r,s){var o=this.chart,a=o.inverted,l=p(e.plotX,-999),h=p(e.plotY,-999),c=i.getBBox();(e=this.visible&&(e.series.forceDL||o.isInsidePlot(e.plotX,e.plotY,a)))&&(r=t({x:a?o.plotWidth-h:l,y:he(a?o.plotHeight-l:h),width:0,height:0},r),t(n,{width:c.width,height:c.height}),n.rotation?(a={align:n.align,x:r.x+n.x+r.width/2,y:r.y+n.y+r.height/2},i[s?"attr":"animate"](a)):(i.align(n,null,r),a=i.alignAttr,"justify"===p(n.overflow,"justify")?this.justifyDataLabel(i,n,a,c,r,s):p(n.crop,!0)&&(e=o.isInsidePlot(a.x,a.y)&&o.isInsidePlot(a.x+c.width,a.y+c.height)))),e||(i.attr({y:-999}),i.placed=!1)},mi.prototype.justifyDataLabel=function(t,e,i,n,r,s){var o,a,l=this.chart,h=e.align,c=e.verticalAlign;o=i.x,0>o&&("right"===h?e.align="left":e.x=-o,a=!0),o=i.x+n.width,o>l.plotWidth&&("left"===h?e.align="right":e.x=l.plotWidth-o,a=!0),o=i.y,0>o&&("bottom"===c?e.verticalAlign="top":e.y=-o,a=!0),o=i.y+n.height,o>l.plotHeight&&("top"===c?e.verticalAlign="bottom":e.y=l.plotHeight-o,a=!0),a&&(t.placed=!s,t.align(e,null,r))},He.pie&&(He.pie.prototype.drawDataLabels=function(){var t,e,i,n,r,s,o,a,l,h,c,d,u=this,f=u.data,g=u.chart,m=u.options.dataLabels,y=p(m.connectorPadding,10),v=p(m.connectorWidth,1),x=g.plotWidth,g=g.plotHeight,b=p(m.softConnector,!0),w=m.distance,k=u.center,S=k[2]/2,T=k[1],C=w>0,A=[[],[]],L=[0,0,0,0],M=function(t,e){return e.y-t.y};if(u.visible&&(m.enabled||u._hasPointLabels)){for(mi.prototype.drawDataLabels.apply(u),je(f,function(t){t.dataLabel&&t.visible&&A[t.half].push(t)}),c=0;!o&&f[c];)o=f[c]&&f[c].dataLabel&&(f[c].dataLabel.getBBox().height||21),c++;for(c=2;c--;){var I,f=[],D=[],E=A[c],O=E.length;if(u.sortByAngle(E,c-.5),w>0){for(d=T-S-w;T+S+w>=d;d+=o)f.push(d);if(r=f.length,O>r){for(t=[].concat(E),t.sort(M),d=O;d--;)t[d].rank=d;for(d=O;d--;)E[d].rank>=r&&E.splice(d,1);O=E.length}for(d=0;O>d;d++){t=E[d],s=t.labelPos,t=9999;var R,z;for(z=0;r>z;z++)R=fe(f[z]-s[1]),t>R&&(t=R,I=z);if(d>I&&null!==f[d])I=d;else for(O-d+I>r&&null!==f[d]&&(I=r-O+d);null===f[I];)I++;D.push({i:I,y:f[I]}),f[I]=null}D.sort(M)}for(d=0;O>d;d++)t=E[d],s=t.labelPos,n=t.dataLabel,h=t.visible===!1?"hidden":"visible",t=s[1],w>0?(r=D.pop(),I=r.i,l=r.y,(t>l&&null!==f[I+1]||l>t&&null!==f[I-1])&&(l=t)):l=t,a=m.justify?k[0]+(c?-1:1)*(S+w):u.getX(0===I||I===f.length-1?t:l,c),n._attr={visibility:h,align:s[6]},n._pos={x:a+m.x+({left:y,right:-y}[s[6]]||0),y:l+m.y-10},n.connX=a,n.connY=l,null===this.options.size&&(r=n.width,y>a-r?L[3]=ue(he(r-a+y),L[3]):a+r>x-y&&(L[1]=ue(he(a+r-x+y),L[1])),0>l-o/2?L[0]=ue(he(-l+o/2),L[0]):l+o/2>g&&(L[2]=ue(he(l+o/2-g),L[2])))}(0===P(L)||this.verifyDataLabelOverflow(L))&&(this.placeDataLabels(),C&&v&&je(this.points,function(t){e=t.connector,s=t.labelPos,(n=t.dataLabel)&&n._pos?(h=n._attr.visibility,a=n.connX,l=n.connY,i=b?["M",a+("left"===s[6]?5:-5),l,"C",a,l,2*s[2]-s[4],2*s[3]-s[5],s[2],s[3],"L",s[4],s[5]]:["M",a+("left"===s[6]?5:-5),l,"L",s[2],s[3],"L",s[4],s[5]],e?(e.animate({d:i}),e.attr("visibility",h)):t.connector=e=u.chart.renderer.path(i).attr({"stroke-width":v,stroke:m.connectorColor||t.color||"#606060",visibility:h}).add(u.group)):e&&(t.connector=e.destroy())}))}},He.pie.prototype.placeDataLabels=function(){je(this.points,function(t){var e,t=t.dataLabel;t&&((e=t._pos)?(t.attr(t._attr),t[t.moved?"animate":"attr"](e),t.moved=!0):t&&t.attr({y:-999}))})},He.pie.prototype.alignDataLabel=Oe,He.pie.prototype.verifyDataLabelOverflow=function(t){var e,i=this.center,n=this.options,r=n.center,s=n=n.minSize||80;return null!==r[0]?s=ue(i[2]-ue(t[1],t[3]),n):(s=ue(i[2]-t[1]-t[3],n),i[0]+=(t[3]-t[1])/2),null!==r[1]?s=ue(pe(s,i[2]-ue(t[0],t[2])),n):(s=ue(pe(s,i[2]-t[0]-t[2]),n),i[1]+=(t[0]-t[2])/2),sp(this.translatedThreshold,o.plotSizeY),c=p(n.inside,!!this.options.stacking);l&&(r=e(l),a&&(r={x:o.plotWidth-r.y-r.height,y:o.plotHeight-r.x-r.width,width:r.height,height:r.width}),!c)&&(a?(r.x+=h?0:r.width,r.width=0):(r.y+=h?r.height:0,r.height=0)),n.align=p(n.align,!a||c?"center":h?"right":"left"),n.verticalAlign=p(n.verticalAlign,a||c?"middle":h?"top":"bottom"),mi.prototype.alignDataLabel.call(this,t,i,n,r,s)}),t(Highcharts,{Axis:z,Chart:N,Color:oi,Point:gi,Tick:R,Tooltip:F,Renderer:H,Series:mi,SVGElement:O,SVGRenderer:ai,arrayMin:C,arrayMax:P,charts:Re,dateFormat:G,format:b,pathAnim:Y,getOptions:function(){return X},hasBidiBug:Le,isTouchDevice:Ce,numberFormat:y,seriesTypes:He,setOptions:function(t){return X=e(!0,X,t),E(),X},addEvent:Ze,removeEvent:Ke,createElement:g,discardElement:L,css:f,each:je,extend:t,map:Ue,merge:e,pick:p,splat:u,extendClass:m,pInt:i,wrap:x,svg:Ae,canvas:Me,vml:!Ae&&!Me,product:"Highcharts",version:"3.0.8"})}(),function(){var t=Highcharts,e=t.Chart,i=t.addEvent,n=t.createElement,r=t.discardElement,s=t.css,o=t.merge,a=t.each,l=t.extend,h=Math.max,c=document,d=window,u="ontouchstart"in c.documentElement,p=t.setOptions({lang:{downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",exportButtonTitle:"Export to raster or vector image",printButtonTitle:"Print the chart"}});p.navigation={menuStyle:{border:"1px solid #A0A0A0",background:"#FFFFFF"},menuItemStyle:{padding:"0 5px",background:"none",color:"#303030",fontSize:u?"14px":"11px"},menuItemHoverStyle:{background:"#4572A5",color:"#FFFFFF"},buttonOptions:{align:"right",backgroundColor:{linearGradient:[0,0,0,20],stops:[[.4,"#F7F7F7"],[.6,"#E3E3E3"]]},borderColor:"#B0B0B0",borderRadius:3,borderWidth:1,height:20,hoverBorderColor:"#909090",hoverSymbolFill:"#81A7CF",hoverSymbolStroke:"#4572A5",symbolFill:"#E0E0E0",symbolStroke:"#A0A0A0",symbolX:11.5,symbolY:10.5,verticalAlign:"top",width:24,y:10}},p.exporting={type:"image/png",url:"http://export.highcharts.com/",width:800,buttons:{exportButton:{symbol:"exportIcon",x:-10,symbolFill:"#A8BF77",hoverSymbolFill:"#768F3E",_titleKey:"exportButtonTitle",menuItems:[{textKey:"downloadPNG",onclick:function(){this.exportChart()}},{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}]},printButton:{symbol:"printIcon",x:-36,symbolFill:"#B5C9DF",hoverSymbolFill:"#779ABF",_titleKey:"printButtonTitle",onclick:function(){this.print()}}}},l(e.prototype,{getSVG:function(t){var e,i,s,h,d,u,p=this,f=o(p.options,t);return c.createElementNS||(c.createElementNS=function(t,e){var i=c.createElement(e);return i.getBBox=function(){return p.renderer.Element.prototype.getBBox.apply({element:i})},i}),e=n("div",null,{position:"absolute",top:"-9999em",width:p.chartWidth+"px",height:p.chartHeight+"px"},c.body),l(f.chart,{renderTo:e,forExport:!0}),f.exporting.enabled=!1,f.chart.plotBackgroundImage=null,f.series=[],a(p.series,function(t){s=t.options,s.animation=!1,s.showCheckbox=!1,s&&s.marker&&/^url\(/.test(s.marker.symbol)&&(s.marker.symbol="circle"),s.data=[],a(t.data,function(t){h=t.config,d={x:t.x,y:t.y,name:t.name},"object"==typeof h&&t.config&&h.constructor!=Array&&l(d,h),s.data.push(d),(u=t.config&&t.config.marker)&&/^url\(/.test(u.symbol)&&delete u.symbol}),f.series.push(s)}),t=new Highcharts.Chart(f),i=t.container.innerHTML,f=null,t.destroy(),r(e),i=i.replace(/zIndex="[^"]+"/g,"").replace(/isShadow="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery[0-9]+="[^"]+"/g,"").replace(/isTracker="[^"]+"/g,"").replace(/url\([^#]+#/g,"url(#").replace(/id=([^" >]+)/g,'id="$1"').replace(/class=([^" ]+)/g,'class="$1"').replace(/ transform /g," ").replace(/:(path|rect)/g,"$1").replace(/style="([^"]+)"/g,function(t){return t.toLowerCase()}),i=i.replace(/(url\(#highcharts-[0-9]+)"/g,"$1").replace(/"/g,"'"),2==i.match(/ xmlns="/g).length&&(i=i.replace(/xmlns="[^"]+"/,"")),i},exportChart:function(t,e){var i,s=this.getSVG(e);t=o(this.options.exporting,t),i=n("form",{method:"post",action:t.url},{display:"none"},c.body),a(["filename","type","width","svg"],function(e){n("input",{type:"hidden",name:e,value:{filename:t.filename||"chart",type:t.type,width:t.width,svg:s}[e]},null,i)}),i.submit(),r(i)},print:function(){var t=this,e=t.container,i=[],n=e.parentNode,r=c.body,s=r.childNodes;t.isPrinting||(t.isPrinting=!0,a(s,function(t,e){1==t.nodeType&&(i[e]=t.style.display,t.style.display="none")}),r.appendChild(e),d.print(),setTimeout(function(){n.appendChild(e),a(s,function(t,e){1==t.nodeType&&(t.style.display=i[e])}),t.isPrinting=!1},1e3))},contextMenu:function(e,r,o,c,d,p){var f,g,m=this,y=m.options.navigation,v=y.menuItemStyle,x=m.chartWidth,b=m.chartHeight,w="cache-"+e,k=m[w],S=h(d,p);k||(m[w]=k=n("div",{className:"highcharts-"+e},{position:"absolute",zIndex:1e3,padding:S+"px"},m.container),f=n("div",null,l({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},y.menuStyle),k),g=function(){s(k,{display:"none"})},i(k,"mouseleave",g),a(r,function(e){e&&(n("div",{onmouseover:function(){s(this,y.menuItemHoverStyle)},onmouseout:function(){s(this,v)},innerHTML:e.text||t.getOptions().lang[e.textKey]},l({cursor:"pointer"},v),f)[u?"ontouchstart":"onclick"]=function(){g(),e.onclick.apply(m,arguments)})}),m.exportMenuWidth=k.offsetWidth,m.exportMenuHeight=k.offsetHeight),e={display:"block"},o+m.exportMenuWidth>x?e.right=x-o-d-S+"px":e.left=o-S+"px",c+p+m.exportMenuHeight>b?e.bottom=b-c-S+"px":e.top=c+p-S+"px",s(k,e)},addButton:function(e){function i(){r.attr(m),n.attr(g)}var n,r,s,a=this,h=a.renderer,c=o(a.options.navigation.buttonOptions,e),d=c.onclick,u=c.menuItems,p=c.width,f=c.height;e=c.borderWidth;var g={stroke:c.borderColor},m={stroke:c.symbolStroke,fill:c.symbolFill};c.enabled!==!1&&(n=h.rect(0,0,p,f,c.borderRadius,e).align(c,!0).attr(l({fill:c.backgroundColor,"stroke-width":e,zIndex:19},g)).add(),s=h.rect(0,0,p,f,0).align(c).attr({fill:"rgba(255, 255, 255, 0.001)",title:t.getOptions().lang[c._titleKey],zIndex:21}).css({cursor:"pointer"}).on("mouseover",function(){r.attr({stroke:c.hoverSymbolStroke,fill:c.hoverSymbolFill}),n.attr({stroke:c.hoverBorderColor})}).on("mouseout",i).on("click",i).add(),u&&(d=function(){i();var t=s.getBBox();a.contextMenu("export-menu",u,t.x,t.y,p,f)}),s.on("click",function(){d.apply(a,arguments)}),r=h.symbol(c.symbol,c.symbolX,c.symbolY,(c.symbolSize||12)/2).align(c,!0).attr(l(m,{"stroke-width":c.symbolStrokeWidth||1,zIndex:20})).add())}}),t.Renderer.prototype.symbols.exportIcon=function(t,e,i){return["M",t-i,e+i,"L",t+i,e+i,t+i,e+.5*i,t-i,e+.5*i,"Z","M",t,e+.5*i,"L",t-.5*i,e-i/3,t-i/6,e-i/3,t-i/6,e-i,t+i/6,e-i,t+i/6,e-i/3,t+.5*i,e-i/3,"Z"]},t.Renderer.prototype.symbols.printIcon=function(t,e,i){return["M",t-i,e+.5*i,"L",t+i,e+.5*i,t+i,e-i/3,t-i,e-i/3,"Z","M",t-.5*i,e-i/3,"L",t-.5*i,e-i,t+.5*i,e-i,t+.5*i,e-i/3,"Z","M",t-.5*i,e+.5*i,"L",t-.75*i,e+i,t+.75*i,e+i,t+.5*i,e+.5*i,"Z"]},e.prototype.callbacks.push(function(t){var e,i=t.options.exporting,n=i.buttons;if(i.enabled!==!1)for(e in n)t.addButton(n[e])})}();var createWindows=function(t,e,i){return function(n){createWindowsWithData(n,t,e,i)}},updatePortletPositions=function(t,e){return function(){if(t){var i=$(this).sortable("serialize");colId=$(this).attr("id").charAt($(this).attr("id").length-1),portletArray=getPortletArray(i),jsonResult={col:colId,positions:portletArray},portletArray.length>0&&$.ajax({type:"PUT",url:"../channels/"+e+"/windows",data:{_method:"PUT",page:JSON.stringify(jsonResult)},dataType:"json"})}}},decoratePortlet=function(t){return function(){var e=$(this).find(".portlet-header");return e.append(""),thisObject=$(this),"true"==t?(thisObject.find(".wtype").prepend(""),thisObject.find(".wtype-chart_window").append(""),thisObject.find(".wtype").append(""),thisObject.find(".portlet-header").css("cursor","move")):$(".column").sortable({disabled:!0}),$(this).attr("id")}},uiEditClick=function(t){return function(){var e=$(this).parents(".portlet:first").attr("id").substring(8),i="";$("#chartConfig"+e).load("/channels/"+t+"/charts/"+e+"/edit",function(){i=$("#chartOptions"+e).html(),"undefined"!=i&&i.length>2&&$.each(i.split("&"),setupChartForm(e)),$("#button"+e).click(function(){updateChart(e,!0,450,250,t,!0),$("#chartConfig"+e).dialog("close")})}).dialog({title:"Chart Options",modal:!0,resizable:!1,width:500,dialogClass:"dev-info-dialog"})}},uiViewClick=function(t){return function(){var e=$(this).parents(".portlet:first").find(".portlet-content").offset().left,i=$(this).parents(".portlet:first").find(".portlet-content").offset().top,n=$(this).parents(".portlet:first").attr("id").substring(8);$("body").append(''),$.get("/channels/"+t+"/windows/"+n+"/iframe",function(t){var e=t.replace(/id=\"iframe[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?\"/,"");$("#iframeinner"+n).text(e)}),$("#iframepopup"+n).dialog({resizable:!1,width:"300px",position:[e+200,i-200],title:"Chart Iframe",dialogClass:"dev-info-dialog"})}},uiCloseClick=function(t){return function(){var e=$(this).parents(".portlet:first").attr("id").substring(8),i=$(this).parents(".portlet:first"); +$.update("/channels/"+t+"/windows/"+e+"/hide",function(){i.hide("drop",function(){i.remove()})})}};!function(t){function e(){var e=i(this);return isNaN(e.datetime)||t(this).text(n(e.datetime)),this}function i(e){if(e=t(e),!e.data("timeago")){e.data("timeago",{datetime:s.datetime(e)});var i=t.trim(e.text());i.length>0&&e.attr("title",i)}return e.data("timeago")}function n(t){return s.inWords(r(t))}function r(t){return(new Date).getTime()-t.getTime()}t.timeago=function(e){return e instanceof Date?n(e):"string"==typeof e?n(t.timeago.parse(e)):n(t.timeago.datetime(e))};var s=t.timeago;t.extend(t.timeago,{settings:{refreshMillis:6e4,allowFuture:!1,strings:{prefixAgo:null,prefixFromNow:null,suffixAgo:"ago",suffixFromNow:"from now",seconds:"less than a minute",minute:"about a minute",minutes:"%d minutes",hour:"about an hour",hours:"about %d hours",day:"a day",days:"%d days",month:"about a month",months:"%d months",year:"about a year",years:"%d years",numbers:[]}},inWords:function(e){function i(i,r){var s=t.isFunction(i)?i(r,e):i,o=n.numbers&&n.numbers[r]||r;return s.replace(/%d/i,o)}var n=this.settings.strings,r=n.prefixAgo,s=n.suffixAgo;this.settings.allowFuture&&(0>e&&(r=n.prefixFromNow,s=n.suffixFromNow),e=Math.abs(e));var o=e/1e3,a=o/60,l=a/60,h=l/24,c=h/365,d=45>o&&i(n.seconds,Math.round(o))||90>o&&i(n.minute,1)||45>a&&i(n.minutes,Math.round(a))||90>a&&i(n.hour,1)||24>l&&i(n.hours,Math.round(l))||48>l&&i(n.day,1)||30>h&&i(n.days,Math.floor(h))||60>h&&i(n.month,1)||365>h&&i(n.months,Math.floor(h/30))||2>c&&i(n.year,1)||i(n.years,Math.floor(c));return t.trim([r,d,s].join(" "))},parse:function(e){var i=t.trim(e);return i=i.replace(/\.\d\d\d+/,""),i=i.replace(/-/,"/").replace(/-/,"/"),i=i.replace(/T/," ").replace(/Z/," UTC"),i=i.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"),new Date(i)},datetime:function(e){var i="time"===t(e).get(0).tagName.toLowerCase(),n=i?t(e).attr("datetime"):t(e).attr("title");return s.parse(n)}}),t.fn.timeago=function(){var t=this;t.each(e);var i=s.settings;return i.refreshMillis>0&&setInterval(function(){t.each(e)},i.refreshMillis),t},document.createElement("abbr"),document.createElement("time")}(jQuery),function(t){function e(t,e){return e.measureText(t).width}function i(t,e){return e.text(t),e.width()}var n,r,s,o=!1;t.fn.shorten=function(){var o={},a=arguments,l=a.callee;if(a.length)if(a[0].constructor==Object)o=a[0];else{if("options"==a[0])return t(this).eq(0).data("shorten-options");o={width:parseInt(a[0]),tail:a[1]}}this.css("visibility","hidden");var h=t.extend({},l.defaults,o);return this.each(function(){var a,c=t(this),d=c.text(),u=d.length,p=t("").html(h.tail).text(),f={shortened:!1,textOverflow:!1};if(a="none"!=c.css("float")?h.width||c.width():h.width||c.parent().width(),0>a)return!0;if(c.data("shorten-options",h),this.style.display="inline-block",this.style.whiteSpace="nowrap",n){var g=t(this),m=document.createElement("canvas");ctx=m.getContext("2d"),g.html(m),ctx.font=g.css("font-style")+" "+g.css("font-variant")+" "+g.css("font-weight")+" "+Math.ceil(parseFloat(g.css("font-size")))+"px "+g.css("font-family"),r=ctx,s=e}else g=t('
    '),$td=t("td",g),t(this).html(g),r=$td,s=i;if(g=s.call(this,d,r),a>g)return c.text(d),this.style.visibility="visible",c.data("shorten-info",f),!0;if(h.tooltip&&this.setAttribute("title",d),l._native&&!o.width&&(m=t(""+h.tail+"").text(),1==m.length&&8230==m.charCodeAt(0)))return c.text(d),this.style.overflow="hidden",this.style[l._native]="ellipsis",this.style.visibility="visible",f.shortened=!0,f.textOverflow="ellipsis",c.data("shorten-info",f),!0;p=s.call(this,p,r),a-=p,p=1.15*a,g-p>0&&(p=d.substring(0,Math.ceil(u*(p/g))),s.call(this,p,r)>a&&(d=p,u=d.length));do u--,d=d.substring(0,u);while(s.call(this,d,r)>=a);return c.html(t.trim(t("").text(d).html())+h.tail),this.style.visibility="visible",f.shortened=!0,c.data("shorten-info",f),!0})};var a=document.documentElement.style;"textOverflow"in a?o="textOverflow":"OTextOverflow"in a&&(o="OTextOverflow"),"undefined"!=typeof Modernizr&&Modernizr.canvastext?n=Modernizr.canvastext:(a=document.createElement("canvas"),n=!(!a.getContext||!a.getContext("2d")||"function"!=typeof a.getContext("2d").fillText)),t.fn.shorten._is_canvasTextSupported=n,t.fn.shorten._native=o,t.fn.shorten.defaults={tail:"…",tooltip:!0}}(jQuery),function(t){window.NestedFormEvents=function(){this.addFields=t.proxy(this.addFields,this),this.removeFields=t.proxy(this.removeFields,this)},NestedFormEvents.prototype={addFields:function(e){var i=e.currentTarget,n=t(i).data("association"),r=t("#"+t(i).data("blueprint-id")),s=r.data("blueprint"),o=(t(i).closest(".fields").closestChild("input, textarea, select").eq(0).attr("name")||"").replace(new RegExp("[[a-z_]+]$"),"");if(o)for(var a=o.match(/[a-z_]+_attributes(?=\]\[(new_)?\d+\])/g)||[],l=o.match(/[0-9]+/g)||[],h=0;h0;)for(var n=i.shift(),r=n.children(),s=0;s=a&&l>n||l>=r&&r>a||a>n&&r>l}),a=l+1;var c=0;for(var h in o)if(o[h].selected){var d=o[h].start+c;e&&i.tabString==t.value.substring(d,d+i.tabString.length)?(t.value=t.value.substring(0,d)+t.value.substring(d+i.tabString.length),c-=i.tabString.length):e||(t.value=t.value.substring(0,d)+i.tabString+t.value.substring(d),c+=i.tabString.length)}t.focus();var u=n+(c>0?i.tabString.length:0>c?-i.tabString.length:0),p=r+c;t.setSelectionRange(u,p)}}function n(e,i,n){var r=document.selection.createRange();if(e==r.parentElement())if(""==r.text)if(i){var s=r.getBookmark();r.moveStart("character",-n.tabString.length),n.tabString==r.text?r.text="":(r.moveToBookmark(s),r.moveEnd("character",n.tabString.length),n.tabString==r.text&&(r.text="")),r.collapse(!0),r.select()}else r.text=n.tabString,r.collapse(!1),r.select();else{var o=r.text,a=o.length,l=o.split("\r\n"),h=document.body.createTextRange();h.moveToElementText(e),h.setEndPoint("EndToStart",r);var c=h.text,d=c.split("\r\n"),u=c.length,p=document.body.createTextRange();p.moveToElementText(e),p.setEndPoint("StartToEnd",r);var f=p.text,g=document.body.createTextRange();g.moveToElementText(e),g.setEndPoint("StartToEnd",h);var m=g.text,y=t(e).html();t("#r3").text(u+" + "+a+" + "+f.length+" = "+y.length),u+m.length0?x.setEndPoint("StartToEnd",h):x.setEndPoint("StartToStart",h),x.setEndPoint("EndToEnd",r),x.select()}}t.fn.tabby=function(i){var n=t.extend({},t.fn.tabby.defaults,i),r=t.fn.tabby.pressed;return this.each(function(){$this=t(this);var i=t.meta?t.extend({},n,$this.data()):n;$this.bind("keydown",function(n){var s=t.fn.tabby.catch_kc(n);return 16==s&&(r.shft=!0),17==s&&(r.ctrl=!0,setTimeout("$.fn.tabby.pressed.ctrl = false;",1e3)),18==s&&(r.alt=!0,setTimeout("$.fn.tabby.pressed.alt = false;",1e3)),9!=s||r.ctrl||r.alt?void 0:(n.preventDefault,r.last=s,setTimeout("$.fn.tabby.pressed.last = null;",0),e(t(n.target).get(0),r.shft,i),!1)}).bind("keyup",function(e){16==t.fn.tabby.catch_kc(e)&&(r.shft=!1)}).bind("blur",function(e){9==r.last&&t(e.target).one("focus",function(){r.last=null}).get(0).focus()})})},t.fn.tabby.catch_kc=function(t){return t.keyCode?t.keyCode:t.charCode?t.charCode:t.which},t.fn.tabby.pressed={shft:!1,ctrl:!1,alt:!1,last:null},t.fn.tabby.defaults={tabString:String.fromCharCode(9)}}(jQuery),function(t,e,i){var n={required:"The %s field is required.",matches:"The %s field does not match the %s field.",valid_email:"The %s field must contain a valid email address.",min_length:"The %s field must be at least %s characters in length.",max_length:"The %s field must not exceed %s characters in length.",exact_length:"The %s field must be exactly %s characters in length.",greater_than:"The %s field must contain a number greater than %s.",less_than:"The %s field must contain a number less than %s.",alpha:"The %s field must only contain alphabetical characters.",alpha_numeric:"The %s field must only contain alpha-numeric characters.",alpha_dash:"The %s field must only contain alpha-numeric characters, underscores, and dashes.",numeric:"The %s field must contain only numbers.",integer:"The %s field must contain an integer."},r=function(){},s=/^(.+)\[(.+)\]$/,o=/^[0-9]+$/,a=/^\-?[0-9]+$/,l=/^\-?[0-9]*\.?[0-9]+$/,h=/^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,6}$/i,c=/^[a-z]+$/i,d=/^[a-z0-9]+$/i,u=/^[a-z0-9_-]+$/i,p=function(t,i,n){for(this.callback=n||r,this.errors=[],this.fields={},this.form=e.forms[t]||{},this.messages={},this.handlers={},t=0,n=i.length;n>t;t++){var s=i[t];s.name&&s.rules&&(this.fields[s.name]={name:s.name,display:s.display||s.name,rules:s.rules,type:null,value:null,checked:null})}this.form.onsubmit=function(t){return function(e){try{return t._validateForm(e)}catch(i){}}}(this)};p.prototype.setMessage=function(t,e){return this.messages[t]=e,this},p.prototype.registerCallback=function(t,e){return t&&"string"==typeof t&&e&&"function"==typeof e&&(this.handlers[t]=e),this},p.prototype._validateForm=function(t){this.errors=[];for(var e in this.fields)if(this.fields.hasOwnProperty(e)){var n=this.fields[e]||{},r=this.form[n.name];r&&r!==i&&(n.type=r.type,n.value=r.value,n.checked=r.checked),this._validateField(n)}if("function"==typeof this.callback&&this.callback(this.errors,t),this.errors.length>0){if(!t||!t.preventDefault)return!1;t.preventDefault()}return!0},p.prototype._validateField=function(t){var e=t.rules.split("|");if(-1!==t.rules.indexOf("required")||t.value&&""!==t.value&&t.value!==i)for(var r=0,o=e.length;o>r;r++){var a=e[r],l=null,h=!1;if((parts=s.exec(a))&&(a=parts[1],l=parts[2]),"function"==typeof this._hooks[a]?this._hooks[a].apply(this,[t,l])||(h=!0):"callback_"===a.substring(0,9)&&(a=a.substring(9,a.length),"function"==typeof this.handlers[a]&&this.handlers[a].apply(this,[t.value])===!1&&(h=!0)),h){(e=this.messages[a]||n[a])?(t=e.replace("%s",t.display),l&&(t=t.replace("%s",this.fields[l]?this.fields[l].display:l)),this.errors.push(t)):this.errors.push("An error has occurred with the "+t.display+" field.");break}}},p.prototype._hooks={required:function(t){var e=t.value;return"checkbox"===t.type?t.checked===!0:null!==e&&""!==e},matches:function(t,e){return(el=this.form[e])?t.value===el.value:!1},valid_email:function(t){return h.test(t.value)},min_length:function(t,e){return o.test(e)?t.value.length>=e:!1},max_length:function(t,e){return o.test(e)?t.value.length<=e:!1},exact_length:function(t,e){return o.test(e)?t.value.length==e:!1},greater_than:function(t,e){return l.test(t.value)?parseFloat(t.value)>parseFloat(e):!1},less_than:function(t,e){return l.test(t.value)?parseFloat(t.value)="0"&&"7">=i?parseInt(t.substring(1),8):"u"===i||"x"===i?parseInt(t.substring(2),16):t.charCodeAt(1)}function i(t){return 32>t?(16>t?"\\x0":"\\x")+t.toString(16):(t=String.fromCharCode(t),("\\"===t||"-"===t||"["===t||"]"===t)&&(t="\\"+t),t)}function n(t){for(var n=t.substring(1,t.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),t=[],r=[],s="^"===n[0],o=s?1:0,a=n.length;a>o;++o){var l=n[o];if(/\\[bdsw]/i.test(l))t.push(l);else{var h,l=e(l);a>o+2&&"-"===n[o+1]?(h=e(n[o+2]),o+=2):h=l,r.push([l,h]),65>h||l>122||(65>h||l>90||r.push([32|Math.max(65,l),32|Math.min(h,90)]),97>h||l>122||r.push([-33&Math.max(97,l),-33&Math.min(h,122)]))}}for(r.sort(function(t,e){return t[0]-e[0]||e[1]-t[1]}),n=[],l=[0/0,0/0],o=0;oa[0]&&(a[1]+1>a[0]&&r.push("-"),r.push(i(a[1])));return r.push("]"),r.join("")}function r(t){for(var e=t.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),i=e.length,r=[],a=0,l=0;i>a;++a){var h=e[a];"("===h?++l:"\\"===h.charAt(0)&&(h=+h.substring(1))&&l>=h&&(r[h]=-1)}for(a=1;aa;++a)h=e[a],"("===h?(++l,void 0===r[l]&&(e[a]="(?:")):"\\"===h.charAt(0)&&(h=+h.substring(1))&&l>=h&&(e[a]="\\"+r[l]);for(l=a=0;i>a;++a)"^"===e[a]&&"^"!==e[a+1]&&(e[a]="");if(t.ignoreCase&&o)for(a=0;i>a;++a)h=e[a],t=h.charAt(0),h.length>=2&&"["===t?e[a]=n(h):"\\"!==t&&(e[a]=h.replace(/[A-Za-z]/g,function(t){return t=t.charCodeAt(0),"["+String.fromCharCode(-33&t,32|t)+"]"}));return e.join("")}for(var s=0,o=!1,a=!1,l=0,h=t.length;h>l;++l){var c=t[l];if(c.ignoreCase)a=!0;else if(/[a-z]/i.test(c.source.replace(/\\u[\da-f]{4}|\\x[\da-f]{2}|\\[^UXux]/gi,""))){o=!0,a=!1;break}}for(var d={b:8,t:9,n:10,v:11,f:12,r:13},u=[],l=0,h=t.length;h>l;++l){if(c=t[l],c.global||c.multiline)throw Error(""+c);u.push("(?:"+r(c)+")")}return RegExp(u.join("|"),a?"gi":"g")}function e(t){function e(t){switch(t.nodeType){case 1:if(n.test(t.className))break;for(var i=t.firstChild;i;i=i.nextSibling)e(i);i=t.nodeName,("BR"===i||"LI"===i)&&(r[a]="\n",o[a<<1]=s++,o[a++<<1|1]=t);break;case 3:case 4:i=t.nodeValue,i.length&&(i=l?i.replace(/\r\n?/g,"\n"):i.replace(/[\t\n\r ]+/g," "),r[a]=i,o[a<<1]=s,s+=i.length,o[a++<<1|1]=t)}}var i,n=/(?:^|\s)nocode(?:\s|$)/,r=[],s=0,o=[],a=0;t.currentStyle?i=t.currentStyle.whiteSpace:window.getComputedStyle&&(i=document.defaultView.getComputedStyle(t,q).getPropertyValue("white-space"));var l=i&&"pre"===i.substring(0,3);return e(t),{a:r.join("").replace(/\n$/,""),c:o}}function i(t,e,i,n){e&&(t={a:e,d:t},i(t),n.push.apply(n,t.e))}function n(e,n){function r(t){for(var e=t.d,h=[e,"pln"],c=0,d=t.a.match(s)||[],u={},p=0,f=d.length;f>p;++p){var g,m=d[p],y=u[m],v=void 0;if("string"==typeof y)g=!1;else{var x=o[m.charAt(0)];if(x)v=m.match(x[1]),y=x[0];else{for(g=0;l>g;++g)if(x=n[g],v=m.match(x[1])){y=x[0];break}v||(y="pln")}!(g=y.length>=5&&"lang-"===y.substring(0,5))||v&&"string"==typeof v[1]||(g=!1,y="src"),g||(u[m]=y)}if(x=c,c+=m.length,g){g=v[1];var b=m.indexOf(g),w=b+g.length;v[2]&&(w=m.length-v[2].length,b=w-g.length),y=y.substring(5),i(e+x,m.substring(0,b),r,h),i(e+x+b,g,a(y,g),h),i(e+x+w,m.substring(w),r,h)}else h.push(e+x,y)}t.e=h}var s,o={};!function(){for(var i=e.concat(n),r=[],a={},l=0,h=i.length;h>l;++l){var c=i[l],d=c[3];if(d)for(var u=d.length;--u>=0;)o[d.charAt(u)]=c;c=c[1],d=""+c,a.hasOwnProperty(d)||(r.push(c),a[d]=q)}r.push(/[\S\s]/),s=t(r)}();var l=n.length;return r}function r(t){var e=[],i=[];t.tripleQuotedStrings?e.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):t.multiLineStrings?e.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,q,"'\"`"]):e.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]),t.verbatimStrings&&i.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var r=t.hashComments;return r&&(t.cStyleComments?(r>1?e.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):e.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),i.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):e.push(["com",/^#[^\n\r]*/,q,"#"])),t.cStyleComments&&(i.push(["com",/^\/\/[^\n\r]*/,q]),i.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q])),t.regexLiterals&&i.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]),(r=t.types)&&i.push(["typ",r]),t=(""+t.keywords).replace(/^ | $/g,""),t.length&&i.push(["kwd",RegExp("^(?:"+t.replace(/[\s,]+/g,"|")+")\\b"),q]),e.push(["pln",/^\s+/,q," \r\n  "]),i.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]),n(e,i)}function s(t,e){function i(t){switch(t.nodeType){case 1:if(s.test(t.className))break;if("BR"===t.nodeName)n(t),t.parentNode&&t.parentNode.removeChild(t);else for(t=t.firstChild;t;t=t.nextSibling)i(t);break;case 3:case 4:if(l){var e=t.nodeValue,r=e.match(o);if(r){var h=e.substring(0,r.index);t.nodeValue=h,(e=e.substring(r.index+r[0].length))&&t.parentNode.insertBefore(a.createTextNode(e),t.nextSibling),n(t),h||t.parentNode.removeChild(t)}}}}function n(t){function e(t,i){var n=i?t.cloneNode(!1):t,r=t.parentNode;if(r){var r=e(r,1),s=t.nextSibling;r.appendChild(n);for(var o=s;o;o=s)s=o.nextSibling,r.appendChild(o)}return n}for(;!t.nextSibling;)if(t=t.parentNode,!t)return;for(var i,t=e(t.nextSibling,0);(i=t.parentNode)&&1===i.nodeType;)t=i;h.push(t)}var r,s=/(?:^|\s)nocode(?:\s|$)/,o=/\r\n?|\n/,a=t.ownerDocument;t.currentStyle?r=t.currentStyle.whiteSpace:window.getComputedStyle&&(r=a.defaultView.getComputedStyle(t,q).getPropertyValue("white-space"));var l=r&&"pre"===r.substring(0,3);for(r=a.createElement("LI");t.firstChild;)r.appendChild(t.firstChild);for(var h=[r],c=0;cc;++c)r=h[c],r.className="L"+(c+u)%10,r.firstChild||r.appendChild(a.createTextNode(" ")),d.appendChild(r);t.appendChild(d)}function o(t,e){for(var i=e.length;--i>=0;){var n=e[i];x.hasOwnProperty(n)?window.console&&console.warn("cannot override language handler %s",n):x[n]=t}}function a(t,e){return t&&x.hasOwnProperty(t)||(t=/^\s*f;)d[f]!==d[f+2]?(d[p++]=d[f++],d[p++]=d[f++]):f+=2;for(u=p,f=p=0;u>f;){for(var g=d[f],m=d[f+1],y=f+2;u>=y+2&&d[y+1]===m;)y+=2;d[p++]=g,d[p++]=m,f=y}for(d.length=p;c>r;){var v,x=h[r+2]||l,b=d[t+2]||l,y=Math.min(x,b),w=h[r+1];if(1!==w.nodeType&&(v=o.substring(n,y))){s&&(v=v.replace(i,"\r")),w.nodeValue=v;var k=w.ownerDocument,S=k.createElement("SPAN");S.className=d[t+1];var T=w.parentNode;T.replaceChild(S,w),S.appendChild(w),x>n&&(h[r+1]=w=k.createTextNode(o.substring(y,x)),T.insertBefore(w,S.nextSibling))}n=y,n>=x&&(r+=2),n>=b&&(t+=2)}}catch(C){"console"in window&&console.log(C&&C.stack?C.stack:C)}}var h=["break,continue,do,else,for,if,return,while"],c=[[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],d=[c,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],u=[c,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"],p=[u,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],c=[c,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],f=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],g=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],h=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],m=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,y=/\S/,v=r({keywords:[d,p,c,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+f,g,h],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),x={};o(v,["default-code"]),o(n([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]),o(n([["pln",/^\s+/,q," \r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]),o(n([],[["atv",/^[\S\s]+/]]),["uq.val"]),o(r({keywords:d,hashComments:!0,cStyleComments:!0,types:m}),["c","cc","cpp","cxx","cyc","m"]),o(r({keywords:"null,true,false"}),["json"]),o(r({keywords:p,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:m}),["cs"]),o(r({keywords:u,cStyleComments:!0}),["java"]),o(r({keywords:h,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]),o(r({keywords:f,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py"]),o(r({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]),o(r({keywords:g,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]),o(r({keywords:c,cStyleComments:!0,regexLiterals:!0}),["js"]),o(r({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]),o(n([],[["str",/^[\S\s]+/]]),["regex"]),window.prettyPrintOne=function(t,e,i){var n=document.createElement("PRE");return n.innerHTML=t,i&&s(n,i),l({g:e,i:i,h:n}),n.innerHTML},window.prettyPrint=function(t){function e(){for(var i=window.PR_SHOULD_USE_CONTINUATION?h.now()+250:1/0;d=0){var a,p,o=o.match(u);if(p=!o){p=r;for(var f=void 0,g=p.firstChild;g;g=g.nextSibling)var m=g.nodeType,f=1===m?f?p:g:3===m?y.test(g.nodeValue)?p:f:f;p=(a=f===p?void 0:f)&&"CODE"===a.tagName}for(p&&(o=a.className.match(u)),o&&(o=o[1]),p=!1,f=r.parentNode;f;f=f.parentNode)if(("pre"===f.tagName||"code"===f.tagName||"xmp"===f.tagName)&&f.className&&f.className.indexOf("prettyprint")>=0){p=!0;break}p||((p=(p=r.className.match(/\blinenums\b(?::(\d+))?/))?p[1]&&p[1].length?+p[1]:!0:!1)&&s(r,p),c={g:o,h:r,i:p},l(c))}}do;++o)n.push(i[r][o]);var i=q,h=Date;h.now||(h={now:function(){return+new Date}});var c,d=0,u=/\blang(?:uage)?-([\w.]+)(?!\S)/;e()},window.PR={createSimpleLexer:n,registerLangHandler:o,sourceDecorator:r,PR_ATTRIB_NAME:"atn",PR_ATTRIB_VALUE:"atv",PR_COMMENT:"com",PR_DECLARATION:"dec",PR_KEYWORD:"kwd",PR_LITERAL:"lit",PR_NOCODE:"nocode",PR_PLAIN:"pln",PR_PUNCTUATION:"pun",PR_SOURCE:"src",PR_STRING:"str",PR_TAG:"tag",PR_TYPE:"typ"}}(),!function(t){t(function(){window.prettyPrint&&prettyPrint()})}(window.jQuery),$(document).ready(function(){$(".response").click(function(){var t=$(this).data("response_type");$(".response").removeClass("active"),$(".response-"+t).addClass("active"),$(".format").hide(),$(".format-"+t).show()})}),$(document).ready(function(){$(".flash").length>0&&($(".flash").on("click",function(){$(this).hide("slow")}),setTimeout(function(){$(".flash").length>0&&$(".flash").hide("slow")},15e3)),$("#talkback_command_add").click(function(){$(this).hide(),$("#talkback_command_add_form").removeClass("hide")})}); \ No newline at end of file diff --git a/public/assets/application-27fa9ecfb64199c44a5aa35e88c13270.js.gz b/public/assets/application-27fa9ecfb64199c44a5aa35e88c13270.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..85c46f7866f70f90d2c48841f83681f7c9fbf9e2 GIT binary patch literal 70594 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

    j|`Ub2+a=t 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 ORn*B%u*Wk|4g3!*Rv{Mv literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png b/public/assets/jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png new file mode 100644 index 0000000000000000000000000000000000000000..5b5dab2ab7b1c50dea9cfe73dc5a269a92d2d4b4 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FscKIb$B>N1x91EQ4=4yQ7#`R^ z$vje}bP0l+XkK DSH>_4 literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png b/public/assets/jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png new file mode 100644 index 0000000000000000000000000000000000000000..ac8b229af950c29356abf64a6c4aa894575445f0 GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FsY*{5$B>N1x91EQ4=4yQYz+E8 zPo9&<{J;c_6SHRil>2s{Zw^OT)6@jj2u|u!(plXsM>LJD`vD!n;OXk;vd$@?2>^GI BH@yG= literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png b/public/assets/jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png new file mode 100644 index 0000000000000000000000000000000000000000..ad3d6346e00f246102f72f2e026ed0491988b394 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnour0hLi978O6-<~(*I$*%ybaDOn z{W;e!B}_MSUQoPXhYd^Y6RUoS1yepnPx`2Kz)7OXQG!!=-jY=F+d2OOy?#DnJ32>z UEim$g7SJdLPgg&ebxsLQ09~*s;{X5v literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png b/public/assets/jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png new file mode 100644 index 0000000000000000000000000000000000000000..42ccba269b6e91bef12ad0fa18be651b5ef0ee68 GIT binary patch literal 105 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnouqzpV=978O6-=0?FV^9z|eBtf= z|7WztIJ;WT>{+tN>ySr~=F{k$>;_x^_y?afmf9pRKH0)6?eSP?3s5hEr>mdKI;Vst E0O;M1& literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png b/public/assets/jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png new file mode 100644 index 0000000000000000000000000000000000000000..5a46b47cb16631068aee9e0bd61269fc4e95e5cd GIT binary patch literal 111 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnouq|7{B978O6lPf+wIa#m9#>Unb zm^4K~wN3Zq+uP{vDV26o)#~38k_!`W=^oo1w6ixmPC4R1b Tyd6G3lNdZ*{an^LB{Ts5`idse literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png b/public/assets/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png new file mode 100644 index 0000000000000000000000000000000000000000..7c9fa6c6edcfcdd3e5b77e6f547b719e6fc66e30 GIT binary patch literal 101 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 literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png b/public/assets/jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png new file mode 100644 index 0000000000000000000000000000000000000000..45e8928e5284adacea3f9ec07b9b50667d2ac65f GIT binary patch literal 4369 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 literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png b/public/assets/jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png new file mode 100644 index 0000000000000000000000000000000000000000..7ec70d11bfb2f77374dfd00ef61ba0c3647b5a0c GIT binary patch literal 4369 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 k*Kv;w;*%(i9W@fAqs5i2wiq literal 0 HcmV?d00001 diff --git a/public/assets/jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png b/public/assets/jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png new file mode 100644 index 0000000000000000000000000000000000000000..5ba708c39172a69e069136bd1309c4322c61f571 GIT binary patch literal 4369 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 literal 0 HcmV?d00001 diff --git a/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json b/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json index 5dd6566..b8f4cd3 100644 --- a/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json +++ b/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json @@ -1 +1 @@ -{"files":{"GitHub_ThingSpeak_API-f39bba3caddbf4af63e208b8552a98ac.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"f39bba3caddbf4af63e208b8552a98ac"},"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png":{"logical_path":"ThingSpeak_Logo.png","mtime":"2014-02-08T20:02:14-05:00","size":9258,"digest":"3139b15204b5af565fca3a5f342ef19c"},"eye-b67d3d940541ae7d0b469ed20ee92fe3.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"b67d3d940541ae7d0b469ed20ee92fe3"},"flag_gray-319110a59d1d75cad2d8f29af88fdb23.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"319110a59d1d75cad2d8f29af88fdb23"},"flag_red-16607fd54284010c4e95d5e9a3935b40.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"16607fd54284010c4e95d5e9a3935b40"},"front-b28e4f9d550ff0101a0140b1fb1ec1da.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"b28e4f9d550ff0101a0140b1fb1ec1da"},"icon_location_24-40aef0eb9d6824f7538c1056c90a2156.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"40aef0eb9d6824f7538c1056c90a2156"},"icon_rss-3ce0d86e00a9e937993988e73720950e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"3ce0d86e00a9e937993988e73720950e"},"icons/InfoBox-54072dd9794a709a9fee5ab80d4be545.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"54072dd9794a709a9fee5ab80d4be545"},"icons/Locked-84572b6d8c7a390e424483b16f28410f.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"84572b6d8c7a390e424483b16f28410f"},"icons/Public_32-2bcfb892862a4396e3a5593a5e1df202.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"2bcfb892862a4396e3a5593a5e1df202"},"icons/Unlocked-226c08041c55d88ecf7898dffe6568aa.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"226c08041c55d88ecf7898dffe6568aa"},"icons/delete-9a7fbc7ba573f4ab735f66bc17466a84.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"9a7fbc7ba573f4ab735f66bc17466a84"},"my_house_status_update-526a896242134f12bf2882dfad48fe24.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"526a896242134f12bf2882dfad48fe24"},"rails-6a9a73b3eeba7d35c79c3de6fc98b6f1.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"6a9a73b3eeba7d35c79c3de6fc98b6f1"},"react-99715cc1aac81b13fdc4384378c9cf0e.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"99715cc1aac81b13fdc4384378c9cf0e"},"scheduled_thinghttp-b525411c648770d5252475ab92925006.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"b525411c648770d5252475ab92925006"},"shading-4c8cafd8b85355f46eedb553ece6a663.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"4c8cafd8b85355f46eedb553ece6a663"},"social_sensor_network_logo-2cc4b27d8115a3efcf38c0c6539d06fe.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"2cc4b27d8115a3efcf38c0c6539d06fe"},"social_sensor_network_main-f2114a6f96a027de3c3b39aefd11a34b.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"f2114a6f96a027de3c3b39aefd11a34b"},"talkback-a8f0046a06cddead53bfe73e0a1b11b1.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"a8f0046a06cddead53bfe73e0a1b11b1"},"thinghttp-b22d0641869d4b49e8fdc1441d19bd9d.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"b22d0641869d4b49e8fdc1441d19bd9d"},"thingtweet-2f829197927298b1eb724a072adb072a.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"2f829197927298b1eb724a072adb072a"},"tweetcontrol-5fa1225bb39f188b215d5897b37c2c18.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"5fa1225bb39f188b215d5897b37c2c18"},"images/ui-bg_diagonals-thick_18_b81900_40x40-7cff5779324125bfa623755a21cb7d08.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"7cff5779324125bfa623755a21cb7d08"},"images/ui-bg_diagonals-thick_20_666666_40x40-e3476d26e53f4b2bdba1cbd4216bd169.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"e3476d26e53f4b2bdba1cbd4216bd169"},"images/ui-bg_flat_10_000000_40x100-b4d9562e67d66d83845d2edeaae222d7.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"b4d9562e67d66d83845d2edeaae222d7"},"images/ui-bg_glass_100_f6f6f6_1x400-4d37c970a424e84d47dd48ae788eaef8.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"4d37c970a424e84d47dd48ae788eaef8"},"images/ui-bg_glass_100_fdf5ce_1x400-657936ddb303bcc8c34554da5279debe.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"657936ddb303bcc8c34554da5279debe"},"images/ui-bg_glass_65_ffffff_1x400-5f18db79610dfa0b148ff6335bbc42cb.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"5f18db79610dfa0b148ff6335bbc42cb"},"images/ui-bg_gloss-wave_35_f6a828_500x100-93fadea558da2231315ae756b3be6bbf.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"93fadea558da2231315ae756b3be6bbf"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-4310274c0febae96f7f3d2f54b0a4f42.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"4310274c0febae96f7f3d2f54b0a4f42"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-21008ee33c710d7e484d7f88f2c7dc21.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"21008ee33c710d7e484d7f88f2c7dc21"},"images/ui-icons_222222_256x240-d83eeaaf84f04ca2c5d6a684bc7629af.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"d83eeaaf84f04ca2c5d6a684bc7629af"},"images/ui-icons_228ef1_256x240-65e412c112f4e7ee270afb71005fd17d.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"65e412c112f4e7ee270afb71005fd17d"},"images/ui-icons_ef8c08_256x240-8b462cb27e07227bac8bd0020d9933e4.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8b462cb27e07227bac8bd0020d9933e4"},"images/ui-icons_ffd27a_256x240-3d95bb913fb70688654b00e8ed1eb247.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"3d95bb913fb70688654b00e8ed1eb247"},"images/ui-icons_ffffff_256x240-2066cf4b1373355dbf4a2031099e1a04.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2066cf4b1373355dbf4a2031099e1a04"},"thingspeak_logo-95d6e7cb7f17bbbc1526407176244ca8.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-10T17:38:24-05:00","size":1609,"digest":"95d6e7cb7f17bbbc1526407176244ca8"},"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-03-13T18:51:17-04:00","size":26303,"digest":"c55761d06c28c72e17c9196391bf7fe4"},"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png":{"logical_path":"eye.png","mtime":"2014-03-13T18:51:17-04:00","size":3294,"digest":"9175769cbdc94be2e5c44c59fdd3cbcd"},"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif":{"logical_path":"flag_gray.gif","mtime":"2014-03-13T18:51:17-04:00","size":983,"digest":"a465b55d9751d7d19801facf9d7d66b2"},"flag_red-87843b96f6a35694691fd624cd68a802.gif":{"logical_path":"flag_red.gif","mtime":"2014-03-13T18:51:17-04:00","size":987,"digest":"87843b96f6a35694691fd624cd68a802"},"front-44d3070595f891d9a2d88e00606c6325.png":{"logical_path":"front.png","mtime":"2014-03-13T18:51:17-04:00","size":17717,"digest":"44d3070595f891d9a2d88e00606c6325"},"icon_location_24-bf607f94a54f074c940a844771200b1b.png":{"logical_path":"icon_location_24.png","mtime":"2014-03-13T18:51:17-04:00","size":618,"digest":"bf607f94a54f074c940a844771200b1b"},"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-03-13T18:51:17-04:00","size":1008,"digest":"2687cbed842e6291c3a7b431f7bad93e"},"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-03-13T18:51:17-04:00","size":837,"digest":"3dd7c57e5ed644dc9fa79014c10478ea"},"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png":{"logical_path":"icons/Locked.png","mtime":"2014-03-13T18:51:17-04:00","size":1882,"digest":"dd04ba8d213caf20f92028729f7d652b"},"icons/Public_32-40b058ba964e1b896725268b604c9c74.png":{"logical_path":"icons/Public_32.png","mtime":"2014-03-13T18:51:17-04:00","size":4788,"digest":"40b058ba964e1b896725268b604c9c74"},"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-03-13T18:51:17-04:00","size":1652,"digest":"d8d39a21ce887850ee0acfcaf6553d1c"},"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png":{"logical_path":"icons/delete.png","mtime":"2014-03-13T18:51:17-04:00","size":715,"digest":"1b8201e6714e82d1b6343aaa53e6ac91"},"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png":{"logical_path":"my_house_status_update.png","mtime":"2014-03-13T18:51:17-04:00","size":13437,"digest":"d4b1ef118189a8deb613efab4dd0de51"},"rails-8a98a69213c3e39ca47a4f822df62bfb.png":{"logical_path":"rails.png","mtime":"2014-03-13T18:51:17-04:00","size":6646,"digest":"8a98a69213c3e39ca47a4f822df62bfb"},"react-813abec4f0db433aa7c583c33e2332ac.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"813abec4f0db433aa7c583c33e2332ac"},"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"6151786a4ee07a2cab4c605587a75016"},"shading-0b2c43248624209936e2bf318c546c16.png":{"logical_path":"shading.png","mtime":"2014-03-13T18:51:17-04:00","size":565,"digest":"0b2c43248624209936e2bf318c546c16"},"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-03-13T18:51:17-04:00","size":15370,"digest":"4a42dbecef9e2ab82564b14592f5d05b"},"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-03-13T18:51:17-04:00","size":132931,"digest":"20c93960eee4b916ed842f414bf7fea5"},"talkback-e9f9fa607f7739892d8cd73682aba65d.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"e9f9fa607f7739892d8cd73682aba65d"},"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"bb3f9377bc76eaaff763e4f7b4a03577"},"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-03-13T18:51:17-04:00","size":1609,"digest":"dadc6a1037759f672179ca2d4e96ba6d"},"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"e770a29c4bb3dc128d9023f0bab6e7c6"},"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"3f52ce7cf7f2796df769016ca2487a37"},"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png":{"logical_path":"tweetcontrol_sample.png","mtime":"2011-05-25T18:23:43-04:00","size":24608,"digest":"29e6418760cec16453cc0b3b5707b7c2"},"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-03-13T18:51:18-04:00","size":260,"digest":"8da1641e421200ea88d476a6040548f4"},"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-03-13T18:51:18-04:00","size":251,"digest":"fbffa7c43cac930aa61ea7f15bcee131"},"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-03-13T18:51:18-04:00","size":178,"digest":"dabfeb3662bfa05f655ed5056cce2124"},"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-03-13T18:51:18-04:00","size":104,"digest":"ee77c8327f94bab46c89043ffce9444c"},"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-03-13T18:51:18-04:00","size":125,"digest":"c1024fd9f647f2bf814e32f41e5632c3"},"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-03-13T18:51:19-04:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-03-13T18:51:19-04:00","size":3762,"digest":"61763bbe727affffa1bef63e1492d8a9"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-03-13T18:51:19-04:00","size":90,"digest":"f4dc124a7f6d39a9c8a496120c5e8273"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-03-13T18:51:19-04:00","size":129,"digest":"970b8bb07ae918e7591662db33b7482e"},"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-03-13T18:51:19-04:00","size":4369,"digest":"6597c301cf369830bb7171882648f85e"},"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-03-13T18:51:19-04:00","size":4369,"digest":"2c0de233993aabf35f961f7c39fa9263"},"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-03-13T18:51:19-04:00","size":4369,"digest":"8e46c4f4ea98a986f4e877a51e4c15c5"},"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-03-13T18:51:19-04:00","size":4369,"digest":"f6366c00a59227a55e14d94caaeea3f6"},"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-03-13T18:51:19-04:00","size":4369,"digest":"13dbadd07134115add4ebe610d444859"},"channel_public_view-81af126139a236e81d91e5a5a76d603e.png":{"logical_path":"channel_public_view.png","mtime":"2014-03-13T18:51:17-04:00","size":112757,"digest":"81af126139a236e81d91e5a5a76d603e"},"application-ef64bf5dca3690cbfde3a17b34801823.css":{"logical_path":"application.css","mtime":"2014-02-27T17:59:32-05:00","size":158638,"digest":"ef64bf5dca3690cbfde3a17b34801823"},"application-b32fe30ea714a81e0cc07fd3cb589fcd.css":{"logical_path":"application.css","mtime":"2014-03-04T23:24:59-05:00","size":158671,"digest":"b32fe30ea714a81e0cc07fd3cb589fcd"},"application-30eca9c0618d0b22e7b6d14811e91b0c.js":{"logical_path":"application.js","mtime":"2014-03-13T13:04:31-04:00","size":194564,"digest":"30eca9c0618d0b22e7b6d14811e91b0c"},"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css":{"logical_path":"application.css","mtime":"2014-03-13T18:51:19-04:00","size":158763,"digest":"a653aaeb8d2aaf7bdb2e8103a3983d0a"},"application-7ef51bca06329cea2a440173b3074b04.js":{"logical_path":"application.js","mtime":"2014-03-13T17:23:54-04:00","size":194586,"digest":"7ef51bca06329cea2a440173b3074b04"},"application-758dfe76590292f18a8ab95344e4f660.js":{"logical_path":"application.js","mtime":"2014-03-13T18:51:18-04:00","size":194664,"digest":"758dfe76590292f18a8ab95344e4f660"}},"assets":{"GitHub_ThingSpeak_API.jpg":"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg","ThingSpeak_Logo.png":"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png","eye.png":"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png","flag_gray.gif":"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif","flag_red.gif":"flag_red-87843b96f6a35694691fd624cd68a802.gif","front.png":"front-44d3070595f891d9a2d88e00606c6325.png","icon_location_24.png":"icon_location_24-bf607f94a54f074c940a844771200b1b.png","icon_rss.gif":"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif","icons/InfoBox.png":"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png","icons/Locked.png":"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png","icons/Public_32.png":"icons/Public_32-40b058ba964e1b896725268b604c9c74.png","icons/Unlocked.png":"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png","icons/delete.png":"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png","my_house_status_update.png":"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png","rails.png":"rails-8a98a69213c3e39ca47a4f822df62bfb.png","react.png":"react-813abec4f0db433aa7c583c33e2332ac.png","scheduled_thinghttp.png":"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png","shading.png":"shading-0b2c43248624209936e2bf318c546c16.png","social_sensor_network_logo.png":"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png","social_sensor_network_main.png":"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png","talkback.png":"talkback-e9f9fa607f7739892d8cd73682aba65d.png","thinghttp.png":"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png","thingtweet.png":"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png","tweetcontrol.png":"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png","application.js":"application-758dfe76590292f18a8ab95344e4f660.js","application.css":"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css","images/ui-bg_diagonals-thick_18_b81900_40x40.png":"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png","images/ui-bg_diagonals-thick_20_666666_40x40.png":"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png","images/ui-bg_flat_10_000000_40x100.png":"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png","images/ui-bg_glass_100_f6f6f6_1x400.png":"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png","images/ui-bg_glass_100_fdf5ce_1x400.png":"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png","images/ui-bg_glass_65_ffffff_1x400.png":"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","images/ui-bg_gloss-wave_35_f6a828_500x100.png":"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png","images/ui-bg_highlight-soft_100_eeeeee_1x100.png":"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png","images/ui-bg_highlight-soft_75_ffe45c_1x100.png":"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png","images/ui-icons_222222_256x240.png":"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png","images/ui-icons_228ef1_256x240.png":"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png","images/ui-icons_ef8c08_256x240.png":"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png","images/ui-icons_ffd27a_256x240.png":"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png","images/ui-icons_ffffff_256x240.png":"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png","thingspeak_logo.png":"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png","tweetcontrol_sample.png":"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png","channel_public_view.png":"channel_public_view-81af126139a236e81d91e5a5a76d603e.png"}} \ No newline at end of file +{"files":{"GitHub_ThingSpeak_API-f39bba3caddbf4af63e208b8552a98ac.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"f39bba3caddbf4af63e208b8552a98ac"},"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png":{"logical_path":"ThingSpeak_Logo.png","mtime":"2014-02-08T20:02:14-05:00","size":9258,"digest":"3139b15204b5af565fca3a5f342ef19c"},"eye-b67d3d940541ae7d0b469ed20ee92fe3.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"b67d3d940541ae7d0b469ed20ee92fe3"},"flag_gray-319110a59d1d75cad2d8f29af88fdb23.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"319110a59d1d75cad2d8f29af88fdb23"},"flag_red-16607fd54284010c4e95d5e9a3935b40.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"16607fd54284010c4e95d5e9a3935b40"},"front-b28e4f9d550ff0101a0140b1fb1ec1da.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"b28e4f9d550ff0101a0140b1fb1ec1da"},"icon_location_24-40aef0eb9d6824f7538c1056c90a2156.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"40aef0eb9d6824f7538c1056c90a2156"},"icon_rss-3ce0d86e00a9e937993988e73720950e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"3ce0d86e00a9e937993988e73720950e"},"icons/InfoBox-54072dd9794a709a9fee5ab80d4be545.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"54072dd9794a709a9fee5ab80d4be545"},"icons/Locked-84572b6d8c7a390e424483b16f28410f.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"84572b6d8c7a390e424483b16f28410f"},"icons/Public_32-2bcfb892862a4396e3a5593a5e1df202.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"2bcfb892862a4396e3a5593a5e1df202"},"icons/Unlocked-226c08041c55d88ecf7898dffe6568aa.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"226c08041c55d88ecf7898dffe6568aa"},"icons/delete-9a7fbc7ba573f4ab735f66bc17466a84.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"9a7fbc7ba573f4ab735f66bc17466a84"},"my_house_status_update-526a896242134f12bf2882dfad48fe24.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"526a896242134f12bf2882dfad48fe24"},"rails-6a9a73b3eeba7d35c79c3de6fc98b6f1.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"6a9a73b3eeba7d35c79c3de6fc98b6f1"},"react-99715cc1aac81b13fdc4384378c9cf0e.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"99715cc1aac81b13fdc4384378c9cf0e"},"scheduled_thinghttp-b525411c648770d5252475ab92925006.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"b525411c648770d5252475ab92925006"},"shading-4c8cafd8b85355f46eedb553ece6a663.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"4c8cafd8b85355f46eedb553ece6a663"},"social_sensor_network_logo-2cc4b27d8115a3efcf38c0c6539d06fe.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"2cc4b27d8115a3efcf38c0c6539d06fe"},"social_sensor_network_main-f2114a6f96a027de3c3b39aefd11a34b.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"f2114a6f96a027de3c3b39aefd11a34b"},"talkback-a8f0046a06cddead53bfe73e0a1b11b1.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"a8f0046a06cddead53bfe73e0a1b11b1"},"thinghttp-b22d0641869d4b49e8fdc1441d19bd9d.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"b22d0641869d4b49e8fdc1441d19bd9d"},"thingtweet-2f829197927298b1eb724a072adb072a.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"2f829197927298b1eb724a072adb072a"},"tweetcontrol-5fa1225bb39f188b215d5897b37c2c18.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"5fa1225bb39f188b215d5897b37c2c18"},"images/ui-bg_diagonals-thick_18_b81900_40x40-7cff5779324125bfa623755a21cb7d08.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"7cff5779324125bfa623755a21cb7d08"},"images/ui-bg_diagonals-thick_20_666666_40x40-e3476d26e53f4b2bdba1cbd4216bd169.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"e3476d26e53f4b2bdba1cbd4216bd169"},"images/ui-bg_flat_10_000000_40x100-b4d9562e67d66d83845d2edeaae222d7.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"b4d9562e67d66d83845d2edeaae222d7"},"images/ui-bg_glass_100_f6f6f6_1x400-4d37c970a424e84d47dd48ae788eaef8.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"4d37c970a424e84d47dd48ae788eaef8"},"images/ui-bg_glass_100_fdf5ce_1x400-657936ddb303bcc8c34554da5279debe.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"657936ddb303bcc8c34554da5279debe"},"images/ui-bg_glass_65_ffffff_1x400-5f18db79610dfa0b148ff6335bbc42cb.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"5f18db79610dfa0b148ff6335bbc42cb"},"images/ui-bg_gloss-wave_35_f6a828_500x100-93fadea558da2231315ae756b3be6bbf.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"93fadea558da2231315ae756b3be6bbf"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-4310274c0febae96f7f3d2f54b0a4f42.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"4310274c0febae96f7f3d2f54b0a4f42"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-21008ee33c710d7e484d7f88f2c7dc21.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"21008ee33c710d7e484d7f88f2c7dc21"},"images/ui-icons_222222_256x240-d83eeaaf84f04ca2c5d6a684bc7629af.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"d83eeaaf84f04ca2c5d6a684bc7629af"},"images/ui-icons_228ef1_256x240-65e412c112f4e7ee270afb71005fd17d.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"65e412c112f4e7ee270afb71005fd17d"},"images/ui-icons_ef8c08_256x240-8b462cb27e07227bac8bd0020d9933e4.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8b462cb27e07227bac8bd0020d9933e4"},"images/ui-icons_ffd27a_256x240-3d95bb913fb70688654b00e8ed1eb247.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"3d95bb913fb70688654b00e8ed1eb247"},"images/ui-icons_ffffff_256x240-2066cf4b1373355dbf4a2031099e1a04.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2066cf4b1373355dbf4a2031099e1a04"},"thingspeak_logo-95d6e7cb7f17bbbc1526407176244ca8.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-10T17:38:24-05:00","size":1609,"digest":"95d6e7cb7f17bbbc1526407176244ca8"},"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"c55761d06c28c72e17c9196391bf7fe4"},"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"9175769cbdc94be2e5c44c59fdd3cbcd"},"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"a465b55d9751d7d19801facf9d7d66b2"},"flag_red-87843b96f6a35694691fd624cd68a802.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"87843b96f6a35694691fd624cd68a802"},"front-44d3070595f891d9a2d88e00606c6325.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"44d3070595f891d9a2d88e00606c6325"},"icon_location_24-bf607f94a54f074c940a844771200b1b.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"bf607f94a54f074c940a844771200b1b"},"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"2687cbed842e6291c3a7b431f7bad93e"},"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"3dd7c57e5ed644dc9fa79014c10478ea"},"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"dd04ba8d213caf20f92028729f7d652b"},"icons/Public_32-40b058ba964e1b896725268b604c9c74.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"40b058ba964e1b896725268b604c9c74"},"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"d8d39a21ce887850ee0acfcaf6553d1c"},"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"1b8201e6714e82d1b6343aaa53e6ac91"},"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"d4b1ef118189a8deb613efab4dd0de51"},"rails-8a98a69213c3e39ca47a4f822df62bfb.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"8a98a69213c3e39ca47a4f822df62bfb"},"react-813abec4f0db433aa7c583c33e2332ac.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"813abec4f0db433aa7c583c33e2332ac"},"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"6151786a4ee07a2cab4c605587a75016"},"shading-0b2c43248624209936e2bf318c546c16.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"0b2c43248624209936e2bf318c546c16"},"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"4a42dbecef9e2ab82564b14592f5d05b"},"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"20c93960eee4b916ed842f414bf7fea5"},"talkback-e9f9fa607f7739892d8cd73682aba65d.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"e9f9fa607f7739892d8cd73682aba65d"},"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"bb3f9377bc76eaaff763e4f7b4a03577"},"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-17T11:45:40-05:00","size":1609,"digest":"dadc6a1037759f672179ca2d4e96ba6d"},"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"e770a29c4bb3dc128d9023f0bab6e7c6"},"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"3f52ce7cf7f2796df769016ca2487a37"},"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png":{"logical_path":"tweetcontrol_sample.png","mtime":"2011-05-25T18:23:43-04:00","size":24608,"digest":"29e6418760cec16453cc0b3b5707b7c2"},"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"8da1641e421200ea88d476a6040548f4"},"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"fbffa7c43cac930aa61ea7f15bcee131"},"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"dabfeb3662bfa05f655ed5056cce2124"},"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"ee77c8327f94bab46c89043ffce9444c"},"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"c1024fd9f647f2bf814e32f41e5632c3"},"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"61763bbe727affffa1bef63e1492d8a9"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"f4dc124a7f6d39a9c8a496120c5e8273"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"970b8bb07ae918e7591662db33b7482e"},"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"6597c301cf369830bb7171882648f85e"},"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2c0de233993aabf35f961f7c39fa9263"},"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8e46c4f4ea98a986f4e877a51e4c15c5"},"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"f6366c00a59227a55e14d94caaeea3f6"},"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"13dbadd07134115add4ebe610d444859"},"channel_public_view-81af126139a236e81d91e5a5a76d603e.png":{"logical_path":"channel_public_view.png","mtime":"2012-09-15T16:30:42-04:00","size":112757,"digest":"81af126139a236e81d91e5a5a76d603e"},"application-ef64bf5dca3690cbfde3a17b34801823.css":{"logical_path":"application.css","mtime":"2014-02-27T17:59:32-05:00","size":158638,"digest":"ef64bf5dca3690cbfde3a17b34801823"},"application-b32fe30ea714a81e0cc07fd3cb589fcd.css":{"logical_path":"application.css","mtime":"2014-03-04T23:24:59-05:00","size":158671,"digest":"b32fe30ea714a81e0cc07fd3cb589fcd"},"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css":{"logical_path":"application.css","mtime":"2014-03-13T13:04:31-04:00","size":158763,"digest":"a653aaeb8d2aaf7bdb2e8103a3983d0a"},"application-758dfe76590292f18a8ab95344e4f660.js":{"logical_path":"application.js","mtime":"2014-03-13T18:15:52-04:00","size":194664,"digest":"758dfe76590292f18a8ab95344e4f660"},"ajax-loader-02917e3c114fd83f5c4c17953aa87e83.gif":{"logical_path":"ajax-loader.gif","mtime":"2014-03-14T15:34:05-04:00","size":3208,"digest":"02917e3c114fd83f5c4c17953aa87e83"},"application-0b135d70dfcec58a528db9562b0ccf06.js":{"logical_path":"application.js","mtime":"2014-03-15T19:59:08-04:00","size":194694,"digest":"0b135d70dfcec58a528db9562b0ccf06"},"application-27fa9ecfb64199c44a5aa35e88c13270.js":{"logical_path":"application.js","mtime":"2014-03-20T11:08:53-04:00","size":194701,"digest":"27fa9ecfb64199c44a5aa35e88c13270"},"active_admin-b50063add15e7f808a148a820d74bf3d.js":{"logical_path":"active_admin.js","mtime":"2014-03-20T16:39:45-04:00","size":243506,"digest":"b50063add15e7f808a148a820d74bf3d"},"active_admin-ef03ab96648e45e8a22d6690f32d1693.css":{"logical_path":"active_admin.css","mtime":"2014-03-20T16:38:50-04:00","size":70032,"digest":"ef03ab96648e45e8a22d6690f32d1693"},"active_admin/admin_notes_icon-44589ac44518808ac8dadd1755e03161.png":{"logical_path":"active_admin/admin_notes_icon.png","mtime":"2014-03-20T16:01:41-04:00","size":716,"digest":"44589ac44518808ac8dadd1755e03161"},"active_admin/datepicker/datepicker-header-bg-bcad4373bcdc56124322dea658739849.png":{"logical_path":"active_admin/datepicker/datepicker-header-bg.png","mtime":"2014-03-20T16:01:41-04:00","size":1701,"digest":"bcad4373bcdc56124322dea658739849"},"active_admin/datepicker/datepicker-input-icon-20df875ab8a44d588cbfd3d8018a52b9.png":{"logical_path":"active_admin/datepicker/datepicker-input-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1535,"digest":"20df875ab8a44d588cbfd3d8018a52b9"},"active_admin/datepicker/datepicker-next-link-icon-f9ef6d04c65df1cb5bda725ebba623a1.png":{"logical_path":"active_admin/datepicker/datepicker-next-link-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1006,"digest":"f9ef6d04c65df1cb5bda725ebba623a1"},"active_admin/datepicker/datepicker-nipple-c6e265f4a33a97853a69662e6350cb31.png":{"logical_path":"active_admin/datepicker/datepicker-nipple.png","mtime":"2014-03-20T16:01:41-04:00","size":1224,"digest":"c6e265f4a33a97853a69662e6350cb31"},"active_admin/datepicker/datepicker-prev-link-icon-ce5f918e536f436ca2095a9e7442c6df.png":{"logical_path":"active_admin/datepicker/datepicker-prev-link-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1004,"digest":"ce5f918e536f436ca2095a9e7442c6df"},"active_admin/index_list_icons/block_icon-efadf57de7365b6e1919448c310b5f04.svg":{"logical_path":"active_admin/index_list_icons/block_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":1141,"digest":"efadf57de7365b6e1919448c310b5f04"},"active_admin/index_list_icons/blog_icon-9522bfa7d1eadd437164992512ac461f.svg":{"logical_path":"active_admin/index_list_icons/blog_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":881,"digest":"9522bfa7d1eadd437164992512ac461f"},"active_admin/index_list_icons/grid_icon-5dbe976f21a86b79408e60b949411fd5.svg":{"logical_path":"active_admin/index_list_icons/grid_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":2132,"digest":"5dbe976f21a86b79408e60b949411fd5"},"active_admin/index_list_icons/table_icon-5276b83ac60335e2891d9f0cbbf368ae.svg":{"logical_path":"active_admin/index_list_icons/table_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":815,"digest":"5276b83ac60335e2891d9f0cbbf368ae"},"active_admin/loading-aebaee21d194d63dd36be976ac42d09b.gif":{"logical_path":"active_admin/loading.gif","mtime":"2014-03-20T16:01:41-04:00","size":2079,"digest":"aebaee21d194d63dd36be976ac42d09b"},"active_admin/nested_menu_arrow-94d9c4f73e81d377f80ae8dbcc71128b.gif":{"logical_path":"active_admin/nested_menu_arrow.gif","mtime":"2014-03-20T16:01:41-04:00","size":70,"digest":"94d9c4f73e81d377f80ae8dbcc71128b"},"active_admin/nested_menu_arrow_dark-b40a488b4f4b7d25cce531a15db4037b.gif":{"logical_path":"active_admin/nested_menu_arrow_dark.gif","mtime":"2014-03-20T16:01:41-04:00","size":70,"digest":"b40a488b4f4b7d25cce531a15db4037b"},"active_admin/orderable-61b5d7f5855b4fbc6b718755d542b71b.png":{"logical_path":"active_admin/orderable.png","mtime":"2014-03-20T16:01:41-04:00","size":220,"digest":"61b5d7f5855b4fbc6b718755d542b71b"},"active_admin/application-e851fe02b20790a5242ac0333acdc2e5.js":{"logical_path":"active_admin/application.js","mtime":"2014-03-20T16:01:41-04:00","size":749,"digest":"e851fe02b20790a5242ac0333acdc2e5"},"active_admin/print-d21aee48657d1ea57f4695edbb2b1b06.css":{"logical_path":"active_admin/print.css","mtime":"2014-03-20T16:01:41-04:00","size":5460,"digest":"d21aee48657d1ea57f4695edbb2b1b06"},"jquery-ui/animated-overlay-f66f40fcb74b7b2076d2a140ad33132d.gif":{"logical_path":"jquery-ui/animated-overlay.gif","mtime":"2014-03-20T16:01:59-04:00","size":1738,"digest":"f66f40fcb74b7b2076d2a140ad33132d"},"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png":{"logical_path":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png","mtime":"2014-03-20T16:01:59-04:00","size":180,"digest":"8c3a37f71112e61b7a0f09cbc94995c9"},"jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png":{"logical_path":"jquery-ui/ui-bg_flat_75_ffffff_40x100.png","mtime":"2014-03-20T16:01:59-04:00","size":178,"digest":"3af74dc50888d335b78248a0694bbd21"},"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png":{"logical_path":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":120,"digest":"d63699c9cc07cd2ecbf3233058f1638e"},"jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"jquery-ui/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png":{"logical_path":"jquery-ui/ui-bg_glass_75_dadada_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":111,"digest":"393389b036ccddba12c4032ebba856d9"},"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-470ccb5154632a9b5118eb8246e61097.png":{"logical_path":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":110,"digest":"470ccb5154632a9b5118eb8246e61097"},"jquery-ui/ui-bg_glass_95_fef1ec_1x400-5a857f14cf3a69c2bf968f54ea5d3037.png":{"logical_path":"jquery-ui/ui-bg_glass_95_fef1ec_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":119,"digest":"5a857f14cf3a69c2bf968f54ea5d3037"},"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png":{"logical_path":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png","mtime":"2014-03-20T16:01:59-04:00","size":101,"digest":"0c2f96e44d86042e97a1a3188141d8de"},"jquery-ui/ui-icons_222222_256x240-3a92dcc42b992876335ae81da242fe5f.png":{"logical_path":"jquery-ui/ui-icons_222222_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"3a92dcc42b992876335ae81da242fe5f"},"jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png":{"logical_path":"jquery-ui/ui-icons_2e83ff_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"2c61f38ac281b30c924aa57c0e15f797"},"jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png":{"logical_path":"jquery-ui/ui-icons_454545_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"515ff3b290c7160a009324d292e3e64a"},"jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png":{"logical_path":"jquery-ui/ui-icons_888888_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"dcb64181e6f3547e73afa034c4466dfd"},"jquery-ui/ui-icons_cd0a0a_256x240-58c4a995b8b611cacb6645f6049b3935.png":{"logical_path":"jquery-ui/ui-icons_cd0a0a_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"58c4a995b8b611cacb6645f6049b3935"}},"assets":{"GitHub_ThingSpeak_API.jpg":"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg","ThingSpeak_Logo.png":"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png","eye.png":"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png","flag_gray.gif":"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif","flag_red.gif":"flag_red-87843b96f6a35694691fd624cd68a802.gif","front.png":"front-44d3070595f891d9a2d88e00606c6325.png","icon_location_24.png":"icon_location_24-bf607f94a54f074c940a844771200b1b.png","icon_rss.gif":"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif","icons/InfoBox.png":"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png","icons/Locked.png":"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png","icons/Public_32.png":"icons/Public_32-40b058ba964e1b896725268b604c9c74.png","icons/Unlocked.png":"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png","icons/delete.png":"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png","my_house_status_update.png":"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png","rails.png":"rails-8a98a69213c3e39ca47a4f822df62bfb.png","react.png":"react-813abec4f0db433aa7c583c33e2332ac.png","scheduled_thinghttp.png":"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png","shading.png":"shading-0b2c43248624209936e2bf318c546c16.png","social_sensor_network_logo.png":"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png","social_sensor_network_main.png":"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png","talkback.png":"talkback-e9f9fa607f7739892d8cd73682aba65d.png","thinghttp.png":"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png","thingtweet.png":"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png","tweetcontrol.png":"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png","application.js":"application-27fa9ecfb64199c44a5aa35e88c13270.js","application.css":"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css","images/ui-bg_diagonals-thick_18_b81900_40x40.png":"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png","images/ui-bg_diagonals-thick_20_666666_40x40.png":"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png","images/ui-bg_flat_10_000000_40x100.png":"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png","images/ui-bg_glass_100_f6f6f6_1x400.png":"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png","images/ui-bg_glass_100_fdf5ce_1x400.png":"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png","images/ui-bg_glass_65_ffffff_1x400.png":"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","images/ui-bg_gloss-wave_35_f6a828_500x100.png":"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png","images/ui-bg_highlight-soft_100_eeeeee_1x100.png":"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png","images/ui-bg_highlight-soft_75_ffe45c_1x100.png":"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png","images/ui-icons_222222_256x240.png":"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png","images/ui-icons_228ef1_256x240.png":"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png","images/ui-icons_ef8c08_256x240.png":"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png","images/ui-icons_ffd27a_256x240.png":"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png","images/ui-icons_ffffff_256x240.png":"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png","thingspeak_logo.png":"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png","tweetcontrol_sample.png":"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png","channel_public_view.png":"channel_public_view-81af126139a236e81d91e5a5a76d603e.png","ajax-loader.gif":"ajax-loader-02917e3c114fd83f5c4c17953aa87e83.gif","active_admin.js":"active_admin-b50063add15e7f808a148a820d74bf3d.js","active_admin.css":"active_admin-ef03ab96648e45e8a22d6690f32d1693.css","active_admin/admin_notes_icon.png":"active_admin/admin_notes_icon-44589ac44518808ac8dadd1755e03161.png","active_admin/datepicker/datepicker-header-bg.png":"active_admin/datepicker/datepicker-header-bg-bcad4373bcdc56124322dea658739849.png","active_admin/datepicker/datepicker-input-icon.png":"active_admin/datepicker/datepicker-input-icon-20df875ab8a44d588cbfd3d8018a52b9.png","active_admin/datepicker/datepicker-next-link-icon.png":"active_admin/datepicker/datepicker-next-link-icon-f9ef6d04c65df1cb5bda725ebba623a1.png","active_admin/datepicker/datepicker-nipple.png":"active_admin/datepicker/datepicker-nipple-c6e265f4a33a97853a69662e6350cb31.png","active_admin/datepicker/datepicker-prev-link-icon.png":"active_admin/datepicker/datepicker-prev-link-icon-ce5f918e536f436ca2095a9e7442c6df.png","active_admin/index_list_icons/block_icon.svg":"active_admin/index_list_icons/block_icon-efadf57de7365b6e1919448c310b5f04.svg","active_admin/index_list_icons/blog_icon.svg":"active_admin/index_list_icons/blog_icon-9522bfa7d1eadd437164992512ac461f.svg","active_admin/index_list_icons/grid_icon.svg":"active_admin/index_list_icons/grid_icon-5dbe976f21a86b79408e60b949411fd5.svg","active_admin/index_list_icons/table_icon.svg":"active_admin/index_list_icons/table_icon-5276b83ac60335e2891d9f0cbbf368ae.svg","active_admin/loading.gif":"active_admin/loading-aebaee21d194d63dd36be976ac42d09b.gif","active_admin/nested_menu_arrow.gif":"active_admin/nested_menu_arrow-94d9c4f73e81d377f80ae8dbcc71128b.gif","active_admin/nested_menu_arrow_dark.gif":"active_admin/nested_menu_arrow_dark-b40a488b4f4b7d25cce531a15db4037b.gif","active_admin/orderable.png":"active_admin/orderable-61b5d7f5855b4fbc6b718755d542b71b.png","active_admin/application.js":"active_admin/application-e851fe02b20790a5242ac0333acdc2e5.js","active_admin/print.css":"active_admin/print-d21aee48657d1ea57f4695edbb2b1b06.css","jquery-ui/animated-overlay.gif":"jquery-ui/animated-overlay-f66f40fcb74b7b2076d2a140ad33132d.gif","jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png","jquery-ui/ui-bg_flat_75_ffffff_40x100.png":"jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png","jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png","jquery-ui/ui-bg_glass_65_ffffff_1x400.png":"jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","jquery-ui/ui-bg_glass_75_dadada_1x400.png":"jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png","jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-470ccb5154632a9b5118eb8246e61097.png","jquery-ui/ui-bg_glass_95_fef1ec_1x400.png":"jquery-ui/ui-bg_glass_95_fef1ec_1x400-5a857f14cf3a69c2bf968f54ea5d3037.png","jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png","jquery-ui/ui-icons_222222_256x240.png":"jquery-ui/ui-icons_222222_256x240-3a92dcc42b992876335ae81da242fe5f.png","jquery-ui/ui-icons_2e83ff_256x240.png":"jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png","jquery-ui/ui-icons_454545_256x240.png":"jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png","jquery-ui/ui-icons_888888_256x240.png":"jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png","jquery-ui/ui-icons_cd0a0a_256x240.png":"jquery-ui/ui-icons_cd0a0a_256x240-58c4a995b8b611cacb6645f6049b3935.png"}} \ No newline at end of file diff --git a/test/fixtures/admin_users.yml b/test/fixtures/admin_users.yml new file mode 100644 index 0000000..937a0c0 --- /dev/null +++ b/test/fixtures/admin_users.yml @@ -0,0 +1,11 @@ +# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html + +# This model initially had no columns defined. If you add columns to the +# model remove the '{}' from the fixture names and add the columns immediately +# below each fixture, per the syntax in the comments below +# +one: {} +# column: value +# +two: {} +# column: value diff --git a/test/models/admin_user_test.rb b/test/models/admin_user_test.rb new file mode 100644 index 0000000..6215c04 --- /dev/null +++ b/test/models/admin_user_test.rb @@ -0,0 +1,7 @@ +require 'test_helper' + +class AdminUserTest < ActiveSupport::TestCase + # test "the truth" do + # assert true + # end +end From 1343f72f7a44d0c2963216e9e2530b647c15e19f Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Wed, 26 Mar 2014 11:10:26 -0400 Subject: [PATCH 07/17] add API to create/clear/delete Channels --- app/assets/stylesheets/custom.css | 2 +- app/assets/stylesheets/sidebar.css | 4 +- app/controllers/application_controller.rb | 2 +- app/controllers/channels_controller.rb | 43 ++++++-- app/controllers/docs_controller.rb | 2 + app/controllers/users_controller.rb | 6 +- app/views/docs/_sidebar.html.erb | 5 +- app/views/docs/channels.html.erb | 9 ++ app/views/docs/channels/_clear.html.erb | 47 ++++++++ app/views/docs/channels/_create.html.erb | 87 +++++++++++++++ app/views/docs/channels/_destroy.html.erb | 72 ++++++++++++ .../docs/channels/_public_index.html.erb | 6 +- app/views/docs/channels/_update.html.erb | 4 +- config/routes.rb | 1 + ...ation-bb478adadc720a958a44ea1e6d7dd685.css | 103 ++++++++++++++++++ ...on-bb478adadc720a958a44ea1e6d7dd685.css.gz | Bin 0 -> 27408 bytes ...fest-27c2ec8d97bd8487cae01bba17cdddb9.json | 2 +- spec/controllers/channels_controller_spec.rb | 71 +++++++++++- spec/controllers/feed_controller_spec.rb | 2 - 19 files changed, 439 insertions(+), 29 deletions(-) create mode 100644 app/views/docs/channels/_clear.html.erb create mode 100644 app/views/docs/channels/_create.html.erb create mode 100644 app/views/docs/channels/_destroy.html.erb create mode 100644 public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css create mode 100644 public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css.gz diff --git a/app/assets/stylesheets/custom.css b/app/assets/stylesheets/custom.css index 67324f3..0bf0074 100644 --- a/app/assets/stylesheets/custom.css +++ b/app/assets/stylesheets/custom.css @@ -32,7 +32,7 @@ body { padding-top: 70px; } .format-block-lg { min-height: 350px; } .format-block-xl { min-height: 400px; } .format-block-xxl { min-height: 600px; } - +.format-block-xxxl { min-height: 1000px; } /* Sticky footer styles -------------------------------------------------- */ diff --git a/app/assets/stylesheets/sidebar.css b/app/assets/stylesheets/sidebar.css index dd24323..6deb86a 100644 --- a/app/assets/stylesheets/sidebar.css +++ b/app/assets/stylesheets/sidebar.css @@ -12,8 +12,8 @@ } #bootstrap-sidebar li a { - padding: 2px 8px; - font-size: 16px; + padding: 1px 8px; + font-size: 15px; } #bootstrap-sidebar li a:hover { diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 74efcf5..de5ae3d 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -131,7 +131,7 @@ class ApplicationController < ActionController::Base def require_user logger.info "Require User" - if current_user.nil? + if current_user.nil? && User.find_by_api_key(get_apikey).nil? respond_to do |format| format.html { session[:link_back] = request.url diff --git a/app/controllers/channels_controller.rb b/app/controllers/channels_controller.rb index 089317d..6af1197 100644 --- a/app/controllers/channels_controller.rb +++ b/app/controllers/channels_controller.rb @@ -3,7 +3,7 @@ class ChannelsController < ApplicationController before_filter :require_user, :except => [ :show, :post_data, :social_show, :social_feed, :public] before_filter :set_channels_menu layout 'application', :except => [:social_show, :social_feed] - protect_from_forgery :except => :post_data + protect_from_forgery :except => [:post_data, :create, :destroy, :clear] require 'csv' # view list of watched channels @@ -129,11 +129,10 @@ class ChannelsController < ApplicationController end def index - @channels = current_user.channels respond_to do |format| format.html - format.json { render :json => @channels } + format.json { render :json => @channels.to_json(:root => false) } end end @@ -190,29 +189,51 @@ class ChannelsController < ApplicationController flash[:notice] = t(:channel_update_success) redirect_to channel_path(@channel.id) - end def create - channel = current_user.channels.create(:field1 => "#{t(:channel_default_field)} 1") + # get the current user or find the user via their api key + @user = current_user || User.find_by_api_key(get_apikey) + channel = @user.channels.create(:field1 => "#{t(:channel_default_field)} 1") + + # make updating attributes easier + params[:channel] = params + channel.update_attributes(channel_params) + channel.set_windows channel.save channel.add_write_api_key @channel_id = channel.id - redirect_to channel_path(@channel_id, :anchor => "channelsettings") + respond_to do |format| + format.json { render :json => channel.to_json(Channel.public_options) } + format.xml { render :xml => channel.to_xml(Channel.public_options) } + format.any { redirect_to channel_path(@channel_id, :anchor => "channelsettings") } + end end # clear all data from a channel def clear - channel = current_user.channels.find(params[:id]) + # get the current user or find the user via their api key + @user = current_user || User.find_by_api_key(get_apikey) + channel = @user.channels.find(params[:id]) channel.delete_feeds - redirect_to channel_path(channel.id) + respond_to do |format| + format.json { render :json => [] } + format.xml { render :xml => [] } + format.any { redirect_to channel_path(channel.id) } + end end def destroy - channel = current_user.channels.find(params[:id]) - channel.destroy - redirect_to channels_path + # get the current user or find the user via their api key + @user = current_user || User.find_by_api_key(get_apikey) + @channel = @user.channels.find(params[:id]) + @channel.destroy + respond_to do |format| + format.json { render :json => @channel.to_json(Channel.public_options) } + format.xml { render :xml => @channel.to_xml(Channel.public_options) } + format.any { redirect_to channels_path, :status => 303 } + end end # response is '0' if failure, 'entry_id' if success diff --git a/app/controllers/docs_controller.rb b/app/controllers/docs_controller.rb index c3afcb3..c7ba287 100644 --- a/app/controllers/docs_controller.rb +++ b/app/controllers/docs_controller.rb @@ -12,10 +12,12 @@ class DocsController < ApplicationController def channels # default values @channel_api_key = 'XXXXXXXXXXXXXXXX' + @user_api_key = 'XXXXXXXXXXXXXXXX' # if user is signed in if current_user && current_user.channels.any? @channel_api_key = current_user.channels.order('updated_at desc').first.write_api_key + @user_api_key = current_user.api_key end end diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 952d357..bac495f 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -20,8 +20,10 @@ class UsersController < ApplicationController respond_with_error(:error_auth_required) and return if user.blank? || !user.valid_password?(params[:password]) # save new authentication token - user.authentication_token = Devise.friendly_token - user.save + if user.authentication_token.blank? + user.authentication_token = Devise.friendly_token + user.save + end # output the user with token respond_to do |format| diff --git a/app/views/docs/_sidebar.html.erb b/app/views/docs/_sidebar.html.erb index 4b5223a..2145d40 100644 --- a/app/views/docs/_sidebar.html.erb +++ b/app/views/docs/_sidebar.html.erb @@ -8,11 +8,14 @@

  • Base URLs
  • API Keys
  • Rate Limits / Caching
  • -
  • Update a Channel
  • +
  • Update Channel Feed
  • Get Channel Feed
  • Get Channel Field Feed
  • Get Status Updates
  • List Public Channels
  • +
  • Create a Channel
  • +
  • Clear a Channel
  • +
  • Delete a Channel
  • Importer
  • <% else %>
  • Channels
  • diff --git a/app/views/docs/channels.html.erb b/app/views/docs/channels.html.erb index 7c50d6e..977b2ab 100644 --- a/app/views/docs/channels.html.erb +++ b/app/views/docs/channels.html.erb @@ -116,6 +116,15 @@
    <%= render 'docs/channels/public_index' %> +
    + <%= render 'docs/channels/create' %> + +
    + <%= render 'docs/channels/clear' %> + +
    + <%= render 'docs/channels/destroy' %> +


    <%= render 'docs/channels/importer' %> diff --git a/app/views/docs/channels/_clear.html.erb b/app/views/docs/channels/_clear.html.erb new file mode 100644 index 0000000..61f9cd3 --- /dev/null +++ b/app/views/docs/channels/_clear.html.erb @@ -0,0 +1,47 @@ +
    + <%= render 'response' %> +

    Clear a Channel

    +
    + +
    +To clear all feed data from a Channel, send an HTTP DELETE to <%= @ssl_api_domain %>channels/CHANNEL_ID/feeds.json.xml . + +

    +Valid parameters: +
      +
    • api_key (string) - User's API Key; please note that this is different than a Channel API key, and can be found in your account details. (required).
    • +
    + +
    +Example DELETE: + +
    +DELETE <%= @ssl_api_domain %>channels/4/feeds.json.xml
    +       api_key=<%= @user_api_key %>
    +
    + +
    + +
    + The response will be a webpage with your Channel. +
    + +
    + The response will be an empty JSON array, for example: + +
    +[]
    +
    +
    + + +
    + The response will be an empty XML array, for example: + +
    +<?xml version="1.0" encoding="UTF-8"?>
    +<nil-classes type="array" />
    +
    + +
    + diff --git a/app/views/docs/channels/_create.html.erb b/app/views/docs/channels/_create.html.erb new file mode 100644 index 0000000..8559611 --- /dev/null +++ b/app/views/docs/channels/_create.html.erb @@ -0,0 +1,87 @@ +
    + <%= render 'response' %> +

    Create a Channel

    +
    + +
    +To create a new Channel, send an HTTP POST to <%= @ssl_api_domain %>channels.json.xml . + +

    +Valid parameters: +
      +
    • api_key (string) - User's API Key; please note that this is different than a Channel API key, and can be found in your account details. (required).
    • +
    • description (string) - Description of the Channel (optional)
    • +
    • elevation (integer) - Elevation in meters (optional)
    • +
    • field1 (string) - Field1 name (optional)
    • +
    • field2 (string) - Field2 name (optional)
    • +
    • field3 (string) - Field3 name (optional)
    • +
    • field4 (string) - Field4 name (optional)
    • +
    • field5 (string) - Field5 name (optional)
    • +
    • field6 (string) - Field6 name (optional)
    • +
    • field7 (string) - Field7 name (optional)
    • +
    • field8 (string) - Field8 name (optional)
    • +
    • latitude (decimal) - Latitude in degrees (optional)
    • +
    • longitude (decimal) - Longitude in degrees (optional)
    • +
    • name (string) - Name of the Channel (optional)
    • +
    • public_flag (true/false) - Whether the Channel should be public, default false (optional)
    • +
    • url (string) - Webpage URL for the Channel (optional)
    • +
    + +
    +Example POST: + +
    +POST <%= @ssl_api_domain %>channels.json.xml
    +     api_key=<%= @user_api_key %>
    +     name=My New Channel
    +
    + +
    + +
    + The response will be a webpage with your newly created Channel. +
    + +
    + The response will be a JSON object of the new channel, for example: + +
    +{
    +  "id": 4,
    +  "name": "My New Channel",
    +  "description": null,
    +  "latitude": null,
    +  "longitude": null,
    +  "created_at": "2014-03-25T13:12:50-04:00",
    +  "elevation": null,
    +  "last_entry_id": null,
    +  "ranking": 15,
    +  "username": "hans",
    +  "tags": []
    +}
    +
    + +
    + +
    + The response will be an XML object of the new channel, for example: + +
    +<?xml version="1.0" encoding="UTF-8"?>
    +<channel>
    +    <id type="integer">4</id>
    +    <name>My New Channel</name>
    +    <description nil="true" />
    +    <latitude type="decimal" nil="true" />
    +    <longitude type="decimal" nil="true" />
    +    <created-at type="dateTime">2014-03-25T20:17:44-04:00</created-at>
    +    <elevation nil="true" />
    +    <last-entry-id type="integer" nil="true" />
    +    <ranking type="integer">15</ranking>
    +    <username>hans</username>
    +    <tags type="array" />
    +</channel>
    +
    + +
    + diff --git a/app/views/docs/channels/_destroy.html.erb b/app/views/docs/channels/_destroy.html.erb new file mode 100644 index 0000000..1d90d8a --- /dev/null +++ b/app/views/docs/channels/_destroy.html.erb @@ -0,0 +1,72 @@ +
    + <%= render 'response' %> +

    Delete a Channel

    +
    + +
    +To create a new Channel, send an HTTP DELETE to <%= @ssl_api_domain %>channels/CHANNEL_ID.json.xml , +replacing CHANNEL_ID with the ID of your Channel. + +

    +Valid parameters: +
      +
    • api_key (string) - User's API Key; please note that this is different than a Channel API key, and can be found in your account details. (required).
    • +
    + +
    +Example DELETE: + +
    +DELETE <%= @ssl_api_domain %>channels/4.json.xml
    +       api_key=<%= @user_api_key %>
    +
    + +
    + +
    + The response will be a webpage with a list of Channels. +
    + +
    + The response will be a JSON object of the Channel before it was deleted, for example: + +
    +{
    +  "id": 4,
    +  "name": "My New Channel",
    +  "description": null,
    +  "latitude": null,
    +  "longitude": null,
    +  "created_at": "2014-03-25T13:12:50-04:00",
    +  "elevation": null,
    +  "last_entry_id": null,
    +  "ranking": 15,
    +  "username": "hans",
    +  "tags": []
    +}
    +
    + +
    + +
    + The response will be an XML object of the Channel before it was deleted, for example: + +
    +<?xml version="1.0" encoding="UTF-8"?>
    +<channel>
    +    <id type="integer">4</id>
    +    <name>My New Channel</name>
    +    <description nil="true" />
    +    <latitude type="decimal" nil="true" />
    +    <longitude type="decimal" nil="true" />
    +    <created-at type="dateTime">2014-03-25T20:17:44-04:00</created-at>
    +    <elevation nil="true" />
    +    <last-entry-id type="integer" nil="true" />
    +    <ranking type="integer">15</ranking>
    +    <username>hans</username>
    +    <tags type="array" />
    +</channel>
    +
    + +
    + diff --git a/app/views/docs/channels/_public_index.html.erb b/app/views/docs/channels/_public_index.html.erb index 63438e7..c604e4a 100644 --- a/app/views/docs/channels/_public_index.html.erb +++ b/app/views/docs/channels/_public_index.html.erb @@ -23,11 +23,11 @@ Example GET:
    -
    +
    The response will be a webpage with a list of public Channels.
    -
    +
    The response will be a JSON object of public Channels, for example:
    @@ -87,7 +87,7 @@ Example GET:
     
     
    -
    +
    The response will be an XML object of public Channels, for example:
    diff --git a/app/views/docs/channels/_update.html.erb b/app/views/docs/channels/_update.html.erb
    index 79d20f3..4a2e8c1 100644
    --- a/app/views/docs/channels/_update.html.erb
    +++ b/app/views/docs/channels/_update.html.erb
    @@ -1,10 +1,10 @@
     
    <%= render 'response' %> -

    Update a Channel

    +

    Update Channel Feed


    -To update a Channel, send an HTTP GET or POST to <%= @ssl_api_domain %>update.json.xml . +To update a Channel feed, send an HTTP GET or POST to <%= @ssl_api_domain %>update.json.xml .

    Valid parameters: diff --git a/config/routes.rb b/config/routes.rb index 30f6990..e448425 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -67,6 +67,7 @@ Thingspeak::Application.routes.draw do get 'channels/:channel_id/feeds/entry/:id(.:format)' => 'feed#show' # not sure why this doesn't work with (s) get 'channels/:channel_id/social_feed' => 'channels#social_feed' get 'channels/:channel_id/feed(s)/debug' => 'feed#debug' + delete 'channels/:id/feeds' => 'channels#clear' # maps get 'channels/:channel_id/maps/channel_show' => 'maps#channel_show' diff --git a/public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css b/public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css new file mode 100644 index 0000000..5764ec0 --- /dev/null +++ b/public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css @@ -0,0 +1,103 @@ +/*! + * Bootstrap v3.1.0 (http://getbootstrap.com) + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.0 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@media print{*{text-shadow:none !important;color:#000 !important;background:transparent !important;box-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.table td,.table th{background-color:#fff !important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:normal;line-height:1;color:#999}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width: 768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-muted{color:#999}.text-primary{color:#428bca}a.text-primary:hover{color:#3071a9}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#428bca}a.bg-primary:hover{background-color:#3071a9}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}.list-inline>li:first-child{padding-left:0}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media (min-width: 992px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.428571429;color:#999}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width: 768px){.container{width:750px}}@media (min-width: 992px){.container{width:970px}}@media (min-width: 1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666666666666%}.col-xs-10{width:83.33333333333334%}.col-xs-9{width:75%}.col-xs-8{width:66.66666666666666%}.col-xs-7{width:58.333333333333336%}.col-xs-6{width:50%}.col-xs-5{width:41.66666666666667%}.col-xs-4{width:33.33333333333333%}.col-xs-3{width:25%}.col-xs-2{width:16.666666666666664%}.col-xs-1{width:8.333333333333332%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666666666666%}.col-xs-pull-10{right:83.33333333333334%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666666666666%}.col-xs-pull-7{right:58.333333333333336%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666666666667%}.col-xs-pull-4{right:33.33333333333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.666666666666664%}.col-xs-pull-1{right:8.333333333333332%}.col-xs-pull-0{right:0}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666666666666%}.col-xs-push-10{left:83.33333333333334%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666666666666%}.col-xs-push-7{left:58.333333333333336%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666666666667%}.col-xs-push-4{left:33.33333333333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.666666666666664%}.col-xs-push-1{left:8.333333333333332%}.col-xs-push-0{left:0}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666666666666%}.col-xs-offset-10{margin-left:83.33333333333334%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666666666666%}.col-xs-offset-7{margin-left:58.333333333333336%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666666666667%}.col-xs-offset-4{margin-left:33.33333333333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.666666666666664%}.col-xs-offset-1{margin-left:8.333333333333332%}.col-xs-offset-0{margin-left:0}@media (min-width: 768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666666666666%}.col-sm-10{width:83.33333333333334%}.col-sm-9{width:75%}.col-sm-8{width:66.66666666666666%}.col-sm-7{width:58.333333333333336%}.col-sm-6{width:50%}.col-sm-5{width:41.66666666666667%}.col-sm-4{width:33.33333333333333%}.col-sm-3{width:25%}.col-sm-2{width:16.666666666666664%}.col-sm-1{width:8.333333333333332%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666666666666%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666666666666%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-0{margin-left:0}}@media (min-width: 992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666666666666%}.col-md-10{width:83.33333333333334%}.col-md-9{width:75%}.col-md-8{width:66.66666666666666%}.col-md-7{width:58.333333333333336%}.col-md-6{width:50%}.col-md-5{width:41.66666666666667%}.col-md-4{width:33.33333333333333%}.col-md-3{width:25%}.col-md-2{width:16.666666666666664%}.col-md-1{width:8.333333333333332%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666666666666%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666666666666%}.col-md-push-10{left:83.33333333333334%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666666666666%}.col-md-push-7{left:58.333333333333336%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666666666667%}.col-md-push-4{left:33.33333333333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.666666666666664%}.col-md-push-1{left:8.333333333333332%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666666666666%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-0{margin-left:0}}@media (min-width: 1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666666666666%}.col-lg-10{width:83.33333333333334%}.col-lg-9{width:75%}.col-lg-8{width:66.66666666666666%}.col-lg-7{width:58.333333333333336%}.col-lg-6{width:50%}.col-lg-5{width:41.66666666666667%}.col-lg-4{width:33.33333333333333%}.col-lg-3{width:25%}.col-lg-2{width:16.666666666666664%}.col-lg-1{width:8.333333333333332%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666666666666%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666666666666%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-0{margin-left:0}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}@media (max-width: 767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type="date"]{line-height:34px}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;margin-top:10px;margin-bottom:10px;padding-left:20px}.radio label,.checkbox label{display:inline;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:46px;line-height:46px}textarea.input-lg,select[multiple].input-lg{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.has-feedback .form-control-feedback{position:absolute;top:25px;right:0;display:block;width:34px;height:34px;line-height:34px;text-align:center}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.form-control-static{margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width: 768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-control-static{padding-top:7px}@media (min-width: 768px){.form-horizontal .control-label{text-align:right}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:15px}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-primary .badge{color:#428bca;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#428bca;font-weight:normal;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url("../fonts/glyphicons-halflings-regular.eot");src:url("../fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"),url("../fonts/glyphicons-halflings-regular.woff") format("woff"),url("../fonts/glyphicons-halflings-regular.ttf") format("truetype"),url("../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width: 992px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:none}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width: 768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width: 768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width: 768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width: 768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width: 992px){.navbar{border-radius:4px}}@media (min-width: 992px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width: 992px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width: 992px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width: 992px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width: 992px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media (min-width: 992px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:none}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width: 992px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width: 991px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width: 992px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width: 992px){.navbar-left{float:left !important}.navbar-right{float:right !important}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (min-width: 768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width: 991px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width: 992px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width: 992px){.navbar-text{float:left;margin-left:15px;margin-right:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width: 991px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#080808;color:#fff}@media (max-width: 991px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#428bca;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{color:#2a6496;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width: 768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#428bca}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}a.list-group-item.active .list-group-item-heading,a.list-group-item.active:hover .list-group-item-heading,a.list-group-item.active:focus .list-group-item-heading{color:inherit}a.list-group-item.active .list-group-item-text,a.list-group-item.active:hover .list-group-item-text,a.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group .list-group-item:first-child{border-top:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel>.list-group:first-child .list-group-item:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tfoot>tr:first-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tfoot>tr:first-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:first-child>td{border-top:0}.panel>.table-bordered>thead>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:last-child>th,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:last-child>td,.panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px;overflow:hidden}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:auto;overflow-y:scroll;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.3s ease-out;-moz-transition:-moz-transform 0.3s ease-out;-o-transition:-o-transform 0.3s ease-out;transition:transform 0.3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);transform:translate(0, 0)}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box;outline:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.428571429px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{margin-top:15px;padding:19px 20px 20px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media (min-width: 768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top .arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right .arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom .arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom .arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left .arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left, color-stop(rgba(0,0,0,0.5) 0), color-stop(rgba(0,0,0,0.0001) 100%));background-image:linear-gradient(to right, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left, color-stop(rgba(0,0,0,0.0001) 0), color-stop(rgba(0,0,0,0.5) 100%));background-image:linear-gradient(to right, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:hover,.carousel-control:focus{outline:none;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0)}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width: 768px){.carousel-control .glyphicons-chevron-left,.carousel-control .glyphicons-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{content:" ";display:table}.clearfix:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important;visibility:hidden !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,tr.visible-xs,th.visible-xs,td.visible-xs{display:none !important}@media (max-width: 767px){.visible-xs{display:block !important}table.visible-xs{display:table}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}.visible-sm,tr.visible-sm,th.visible-sm,td.visible-sm{display:none !important}@media (min-width: 768px) and (max-width: 991px){.visible-sm{display:block !important}table.visible-sm{display:table}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}.visible-md,tr.visible-md,th.visible-md,td.visible-md{display:none !important}@media (min-width: 992px) and (max-width: 1199px){.visible-md{display:block !important}table.visible-md{display:table}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}.visible-lg,tr.visible-lg,th.visible-lg,td.visible-lg{display:none !important}@media (min-width: 1200px){.visible-lg{display:block !important}table.visible-lg{display:table}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (max-width: 767px){.hidden-xs,tr.hidden-xs,th.hidden-xs,td.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm,tr.hidden-sm,th.hidden-sm,td.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md,tr.hidden-md,th.hidden-md,td.hidden-md{display:none !important}}@media (min-width: 1200px){.hidden-lg,tr.hidden-lg,th.hidden-lg,td.hidden-lg{display:none !important}}.visible-print,tr.visible-print,th.visible-print,td.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}@media print{.hidden-print,tr.hidden-print,th.hidden-print,td.hidden-print{display:none !important}}.btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger{text-shadow:0 -1px 0 rgba(0,0,0,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075)}.btn-default:active,.btn-primary:active,.btn-success:active,.btn-info:active,.btn-warning:active,.btn-danger:active,.btn-default.active,.btn-primary.active,.btn-success.active,.btn-info.active,.btn-warning.active,.btn-danger.active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn:active,.btn.active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top, #fff 0, #e0e0e0 100%);background-image:linear-gradient(to bottom, #fff 0, #e0e0e0 100%);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe0e0e0',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-default:hover,.btn-default:focus{background-color:#e0e0e0;background-position:0 -15px}.btn-default:active,.btn-default.active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-primary{background-image:-webkit-linear-gradient(top, #428bca 0, #2d6ca2 100%);background-image:linear-gradient(to bottom, #428bca 0, #2d6ca2 100%);background-repeat:repeat-x;border-color:#2b669a;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff2d6ca2',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus{background-color:#2d6ca2;background-position:0 -15px}.btn-primary:active,.btn-primary.active{background-color:#2d6ca2;border-color:#2b669a}.btn-success{background-image:-webkit-linear-gradient(top, #5cb85c 0, #419641 100%);background-image:linear-gradient(to bottom, #5cb85c 0, #419641 100%);background-repeat:repeat-x;border-color:#3e8f3e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff419641',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus{background-color:#419641;background-position:0 -15px}.btn-success:active,.btn-success.active{background-color:#419641;border-color:#3e8f3e}.btn-warning{background-image:-webkit-linear-gradient(top, #f0ad4e 0, #eb9316 100%);background-image:linear-gradient(to bottom, #f0ad4e 0, #eb9316 100%);background-repeat:repeat-x;border-color:#e38d13;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffeb9316',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus{background-color:#eb9316;background-position:0 -15px}.btn-warning:active,.btn-warning.active{background-color:#eb9316;border-color:#e38d13}.btn-danger{background-image:-webkit-linear-gradient(top, #d9534f 0, #c12e2a 100%);background-image:linear-gradient(to bottom, #d9534f 0, #c12e2a 100%);background-repeat:repeat-x;border-color:#b92c28;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc12e2a',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus{background-color:#c12e2a;background-position:0 -15px}.btn-danger:active,.btn-danger.active{background-color:#c12e2a;border-color:#b92c28}.btn-info{background-image:-webkit-linear-gradient(top, #5bc0de 0, #2aabd2 100%);background-image:linear-gradient(to bottom, #5bc0de 0, #2aabd2 100%);background-repeat:repeat-x;border-color:#28a4c9;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2aabd2',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus{background-color:#2aabd2;background-position:0 -15px}.btn-info:active,.btn-info.active{background-color:#2aabd2;border-color:#28a4c9}.thumbnail,.img-thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top, #f5f5f5 0, #e8e8e8 100%);background-image:linear-gradient(to bottom, #f5f5f5 0, #e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#ffe8e8e8',GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background-color:#357ebd;background-image:-webkit-linear-gradient(top, #428bca 0, #357ebd 100%);background-image:linear-gradient(to bottom, #428bca 0, #357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.navbar-default{background-image:-webkit-linear-gradient(top, #fff 0, #f8f8f8 100%);background-image:linear-gradient(to bottom, #fff 0, #f8f8f8 100%);background-repeat:repeat-x;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff8f8f8',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075)}.navbar-default .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top, #ebebeb 0, #f3f3f3 100%);background-image:linear-gradient(to bottom, #ebebeb 0, #f3f3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb',endColorstr='#fff3f3f3',GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,0.075);box-shadow:inset 0 3px 9px rgba(0,0,0,0.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,0.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top, #3c3c3c 0, #222 100%);background-image:linear-gradient(to bottom, #3c3c3c 0, #222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top, #222 0, #282828 100%);background-image:linear-gradient(to bottom, #222 0, #282828 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff282828',GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,0.25);box-shadow:inset 0 3px 9px rgba(0,0,0,0.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-static-top,.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}.alert{text-shadow:0 1px 0 rgba(255,255,255,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05)}.alert-success{background-image:-webkit-linear-gradient(top, #dff0d8 0, #c8e5bc 100%);background-image:linear-gradient(to bottom, #dff0d8 0, #c8e5bc 100%);background-repeat:repeat-x;border-color:#b2dba1;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffc8e5bc',GradientType=0)}.alert-info{background-image:-webkit-linear-gradient(top, #d9edf7 0, #b9def0 100%);background-image:linear-gradient(to bottom, #d9edf7 0, #b9def0 100%);background-repeat:repeat-x;border-color:#9acfea;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffb9def0',GradientType=0)}.alert-warning{background-image:-webkit-linear-gradient(top, #fcf8e3 0, #f8efc0 100%);background-image:linear-gradient(to bottom, #fcf8e3 0, #f8efc0 100%);background-repeat:repeat-x;border-color:#f5e79e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fff8efc0',GradientType=0)}.alert-danger{background-image:-webkit-linear-gradient(top, #f2dede 0, #e7c3c3 100%);background-image:linear-gradient(to bottom, #f2dede 0, #e7c3c3 100%);background-repeat:repeat-x;border-color:#dca7a7;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffe7c3c3',GradientType=0)}.progress{background-image:-webkit-linear-gradient(top, #ebebeb 0, #f5f5f5 100%);background-image:linear-gradient(to bottom, #ebebeb 0, #f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb',endColorstr='#fff5f5f5',GradientType=0)}.progress-bar{background-image:-webkit-linear-gradient(top, #428bca 0, #3071a9 100%);background-image:linear-gradient(to bottom, #428bca 0, #3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.progress-bar-success{background-image:-webkit-linear-gradient(top, #5cb85c 0, #449d44 100%);background-image:linear-gradient(to bottom, #5cb85c 0, #449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.progress-bar-info{background-image:-webkit-linear-gradient(top, #5bc0de 0, #31b0d5 100%);background-image:linear-gradient(to bottom, #5bc0de 0, #31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.progress-bar-warning{background-image:-webkit-linear-gradient(top, #f0ad4e 0, #ec971f 100%);background-image:linear-gradient(to bottom, #f0ad4e 0, #ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.progress-bar-danger{background-image:-webkit-linear-gradient(top, #d9534f 0, #c9302c 100%);background-image:linear-gradient(to bottom, #d9534f 0, #c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-linear-gradient(top, #428bca 0, #3278b3 100%);background-image:linear-gradient(to bottom, #428bca 0, #3278b3 100%);background-repeat:repeat-x;border-color:#3278b3;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3278b3',GradientType=0)}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top, #f5f5f5 0, #e8e8e8 100%);background-image:linear-gradient(to bottom, #f5f5f5 0, #e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#ffe8e8e8',GradientType=0)}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top, #428bca 0, #357ebd 100%);background-image:linear-gradient(to bottom, #428bca 0, #357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top, #dff0d8 0, #d0e9c6 100%);background-image:linear-gradient(to bottom, #dff0d8 0, #d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffd0e9c6',GradientType=0)}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top, #d9edf7 0, #c4e3f3 100%);background-image:linear-gradient(to bottom, #d9edf7 0, #c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffc4e3f3',GradientType=0)}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top, #fcf8e3 0, #faf2cc 100%);background-image:linear-gradient(to bottom, #fcf8e3 0, #faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fffaf2cc',GradientType=0)}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top, #f2dede 0, #ebcccc 100%);background-image:linear-gradient(to bottom, #f2dede 0, #ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffebcccc',GradientType=0)}.well{background-image:-webkit-linear-gradient(top, #e8e8e8 0, #f5f5f5 100%);background-image:linear-gradient(to bottom, #e8e8e8 0, #f5f5f5 100%);background-repeat:repeat-x;border-color:#dcdcdc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8',endColorstr='#fff5f5f5',GradientType=0);-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1)}code{word-wrap:break-word;white-space:normal}/*! + * jQuery UI CSS Framework 1.8.24 + * + * Copyright 2012, 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/Theming/API + */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{position:absolute !important;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px)}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{zoom:1}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-state-disabled{cursor:default !important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%}/*! + * jQuery UI CSS Framework 1.8.24 + * + * Copyright 2012, 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/Theming/API + * + * To view and modify this theme, visit http://jqueryui.com/themeroller/?ctl=themeroller&ffDefault=Trebuchet%20MS,%20Tahoma,%20Verdana,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=03_highlight_soft.png&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=03_highlight_soft.png&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=08_diagonals_thick.png&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=08_diagonals_thick.png&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=01_flat.png&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px + */.ui-widget{font-family:Trebuchet MS, Tahoma, Verdana, Arial, sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Trebuchet MS, Tahoma, Verdana, Arial, sans-serif;font-size:1em}.ui-widget-content{border:1px solid #dddddd;background:#eee url(images/ui-bg_highlight-soft_100_eeeeee_1x100.png) 50% top repeat-x;color:#333333}.ui-widget-content a{color:#333333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url(images/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x;color:#ffffff;font-weight:bold}.ui-widget-header a{color:#ffffff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #cccccc;background:#f6f6f6 url(images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#1c94c4;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #fbcb09;background:#fdf5ce url(images/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x;font-weight:bold;color:#c77405}.ui-state-hover a,.ui-state-hover a:hover{color:#c77405;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #fbd850;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-widget :active{outline:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url(images/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#b81900 url(images/ui-bg_diagonals-thick_18_b81900_40x40.png) 50% 50% repeat;color:#ffffff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#ffffff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#ffffff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_ffffff_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_ef8c08_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_ef8c08_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_ef8c08_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_228ef1_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_ffd27a_256x240.png)}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-off{background-position:-96px -144px}.ui-icon-radio-on{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.ui-widget-overlay{background:#666 url(images/ui-bg_diagonals-thick_20_666666_40x40.png) 50% 50% repeat;opacity:.50;filter:Alpha(Opacity=50)}.ui-widget-shadow{margin:-5px 0 0 -5px;padding:5px;background:#000 url(images/ui-bg_flat_10_000000_40x100.png) 50% 50% repeat-x;opacity:.20;filter:Alpha(Opacity=20);-moz-border-radius:5px;-khtml-border-radius:5px;-webkit-border-radius:5px;border-radius:5px} /*! +* jQuery UI Resizable 1.8.24 +* +* Copyright 2012, 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/Resizable#theming +*/.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px} /*! +* jQuery UI Selectable 1.8.24 +* +* Copyright 2012, 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/Selectable#theming +*/.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}/*! + * jQuery UI Accordion 1.8.24 + * + * Copyright 2012, 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#theming + */.ui-accordion{width:100%}.ui-accordion .ui-accordion-header{cursor:pointer;position:relative;margin-top:1px;zoom:1}.ui-accordion .ui-accordion-li-fix{display:inline}.ui-accordion .ui-accordion-header-active{border-bottom:0 !important}.ui-accordion .ui-accordion-header a{display:block;font-size:1em;padding:.5em .5em .5em .7em}.ui-accordion-icons .ui-accordion-header a{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;margin-top:-2px;position:relative;top:1px;margin-bottom:2px;overflow:auto;display:none;zoom:1}.ui-accordion .ui-accordion-content-active{display:block}/*! + * jQuery UI Autocomplete 1.8.24 + * + * Copyright 2012, 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#theming + */.ui-autocomplete{position:absolute;cursor:default}* html .ui-autocomplete{width:1px}.ui-menu{list-style:none;padding:2px;margin:0;display:block;float:left}.ui-menu .ui-menu{margin-top:-3px}.ui-menu .ui-menu-item{margin:0;padding:0;zoom:1;float:left;clear:left;width:100%}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:.2em .4em;line-height:1.5;zoom:1}.ui-menu .ui-menu-item a.ui-state-hover,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px}/*! + * jQuery UI Button 1.8.24 + * + * Copyright 2012, 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#theming + */.ui-button{display:inline-block;position:relative;padding:0;margin-right:.1em;text-decoration:none !important;cursor:pointer;text-align:center;zoom:1;overflow:visible}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:1.4}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}button.ui-button::-moz-focus-inner{border:0;padding:0}/*! + * jQuery UI Dialog 1.8.24 + * + * Copyright 2012, 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#theming + */.ui-dialog{position:absolute;padding:.2em;width:300px;overflow:hidden}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 16px .1em 0}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:19px;margin:-10px 0 0 0;padding:1px;height:18px}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin:1px}.ui-dialog .ui-dialog-titlebar-close:hover,.ui-dialog .ui-dialog-titlebar-close:focus{padding:0}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto;zoom:1}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin:.5em 0 0 0;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:14px;height:14px;right:3px;bottom:3px}.ui-draggable .ui-dialog-titlebar{cursor:move}/*! + * jQuery UI Slider 1.8.24 + * + * Copyright 2012, 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#theming + */.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0} /*! +* jQuery UI Tabs 1.8.24 +* +* Copyright 2012, 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#theming +*/.ui-tabs{position:relative;padding:.2em;zoom:1}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:1px;margin:0 .2em 1px 0;border-bottom:0 !important;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-selected{margin-bottom:0;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-selected a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-state-processing a{cursor:text}.ui-tabs .ui-tabs-nav li a,.ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tabs .ui-tabs-hide{display:none !important}/*! + * jQuery UI Datepicker 1.8.24 + * + * Copyright 2012, 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#theming + */.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-cover{position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px}/*! +* jQuery UI Progressbar 1.8.24 +* +* Copyright 2012, 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#theming +*/.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.navbar-collapse{max-height:350px}.breadcrumb{margin-top:10px;margin-bottom:20px}.table td{word-break:break-word}body{padding-top:70px}.break-word{word-break:break-word}.col-pad{padding:0 15px}.dismiss{float:right;cursor:pointer;position:relative;top:-12px;left:7px}.form-horizontal .multiline-label{margin-top:-10px}.nested-fields{border:1px solid #d6d6d6;padding:10px 10px 0 10px;max-width:275px}.customcode,.customcode .str,.customcode .lit,.customcode .pln{color:#00ab9b}.response-div{margin-top:12px;font-size:0.8em}.response{background-color:#ddd;margin:0 1px;border:1px solid #555;padding:2px;font-weight:bold;color:#555;cursor:pointer}.response:hover{background-color:#eeb}.response.active{background-color:#beb;cursor:initial}.format-json,.format-xml{display:none}.format-block{min-height:200px}.format-block-lg{min-height:350px}.format-block-xl{min-height:400px}.format-block-xxl{min-height:600px}.format-block-xxxl{min-height:1000px}html,body{height:100%}#wrap{min-height:100%;height:auto;margin:0 auto -30px;padding:0 0 60px}#footer{padding-top:5px;border-top:1px solid #ddd;height:30px;background-color:#f5f5f5}#footer .container{background-color:#f5f5f5}@media (max-width: 767px){#footer span{display:block;text-align:center;float:none !important}}.infobox{vertical-align:bottom}.spanlink{cursor:pointer}.boldlink{font-weight:bold}.apps a:hover,.apps:hover div{text-decoration:none}.commentarea{width:300px;height:80px}#login{padding:6px;border:1px solid #bbbbbb;border-collapse:separate;border-spacing:3px;background-color:#eeeeee;background:-webkit-gradient(linear, left top, right top, from(#ddd), to(#f5f5f5));background:-moz-linear-gradient(left, #ddd, #f5f5f5);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dddddd', endColorstr='#f5f5f5', GradientType=1)}#channel_info{padding-bottom:20px}.signed_in_channel_header{display:inline-block}.public_private_icon{display:inline-block}.signed_in_channel_header{width:300px;height:10px}#list_progress_bar{width:300px;height:10px}.public_channel_box{margin:5px;border-radius:7px;height:300px;border:solid 1px red;display:inline-block;width:260px;vertical-align:top}.public_channel_inner{margin-left:10px;margin-right:5px}.public_channel_name{height:11px;font-size:1.3em;font-weight:bold;color:#2565A5}.public_channel_user{height:15px;margin-left:7px;font-size:0.9em}.progressbar{height:10px}.public_channel_desc{height:140px;word-break:break-all}.public_channel_url{height:10px}.public_channel_tags{height:57px;margin-bottom:10px;overflow:hidden}.public_channel_thumbnail{position:absolute;border:2px solid red;display:none}h1.channel_info{margin:0;padding-top:10px}div.list_tags{padding-top:20px}.channelLinks{padding:0 0 0 0;margin-bottom:15px}.channelLinks li{padding:7px;border:1px solid #ccc;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px;display:inline;margin:0 0 0 0;list-style:none}#comments{width:100%}#commentsmain{float:left;width:190px;background-color:#fffff9;border:1px dashed #d0d0d0;padding:5px;margin-right:16px;overflow:hidden;display:none}.commentlink{float:left;width:100%}#public_statuses{width:455px;height:380px;overflow:auto;font-size:1.5em}#public_statuses div{margin-left:15px}.statusIFrame{border:1px solid #ccc;background-color:#ffffff}.userlogin{display:none}.login_info{font-weight:bold;text-align:right;font-size:12px}.round{-moz-border-radius:7px;-webkit-border-radius:7px}.text_center{text-align:center}.big{font-size:18px}.large{font-size:20px}.xlarge{font-size:30px}.small{font-size:12px}.action{margin-right:20px;position:relative;top:35px;font-weight:bold;padding:10px}.action_reverse{margin-right:20px;position:relative;top:35px;font-weight:bold;background-color:#d62020;padding:8px;color:#000000}.action_reverse a{color:#FFFFFF}.section_header_reverse{margin:15px 0 5px 0;display:inline-block;font-weight:bold;color:#FFFFFF;background-color:#d62020;padding:8px}.nicetable{font-size:14px;border:1px solid #bbbbbb}.nicetable-borderless{font-size:14px;border:none}.nicetable-borderless p{margin-left:20px;margin-top:5px;margin-bottom:10px}.nicetable-borderless h3{margin-bottom:0}.nicetable-borderless h3.signed_in_channel_header{margin-bottom:10px}.nicetable .header{font-weight:bold;background-color:#e5e5e5}.nicetable .header td{padding-top:3px}.nicetable td{padding:2px 10px;border-bottom:1px solid #bbbbbb;word-wrap:word}.nicetable .stripe{background-color:#f9f9f9}.nicetable .disabled{background-color:#eee}.nicetable .disabled a{color:#888}.fulltable{width:95%}.fullform{width:100%;margin-bottom:1.5em}.deletecol{width:1em}.table_no_header{font-size:14px}.table_no_header td{padding:2px 10px}.table_no_header .left{font-weight:bold}.max_width_400{max-width:40;word-wrap:break-word}.helplink{float:right;margin-top:3px}.votediv,.votedivphoto,.votedivlink{color:#3478e3}.votedivlink{padding-right:20px}.votediv{float:right;display:none}.voteicon{padding:2px;background:#f8f8f8;border:1px solid #ddd;cursor:pointer}.voteicon:hover{text-decoration:none}.voteicon img{position:relative;top:3px}.nestedcomment{padding-left:30px}.commenttable{padding:0;margin:0;width:100%}.commenttable td{padding:4px 10px 4px 5px}.commentchannel{color:#f08600;font-weight:bold}.commentbody{color:#333333}.commentdiv{width:100%;padding:5px 0 5px 0;font-size:12px;border-top:1px solid #aaa}.gravatar{border:1px solid #999}.noavatar{width:50px;height:50px;border:1px solid #ddd;color:#ddd;text-align:center}.noavatartext{padding-top:5px}.prettydate{color:#aaa}.username a{color:#3478E3;font-weight:bold}.timeago{font-size:0.8em;color:#ccc}.pagination{font-size:14px}.centerme{display:table;margin:0 auto}.fixedwidth{width:960px;display:table;margin:0 auto}.code{margin:10px 0;background-color:#fafafa;white-space:pre-wrap;font:12px Monaco, Lucida Console, monospace;color:#000000;border:1px solid #bbbbbb;padding:10px}.apps{padding:0 30px 40px 0;font-size:20px;float:left;text-align:center;margin:0 auto;width:150px}input[type="text"].shortfield{width:30px}input[type="text"].midfield{width:120px}textarea.tweet{margin-top:0.5em;width:40em;height:3em}.errorExplanation,#error_explanation{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px;background-color:#f2dede;border-color:#ebccd1;color:#a94442}#error{color:red}.field_with_errors{display:inline}.warning_box{margin:15px 0 15px 0;padding:10px;background-color:#fc3;color:#000;border:1px solid #f90}#maincontent{float:left;width:980px;padding-bottom:20px;margin-left:10px;overflow:false}#maincontent.thin{width:400px}#maincontent.medium{width:500px}#maincontent .thinghttptable{table-layout:fixed;width:400px;word-wrap:break-word}#maincontent .thinghttptable .url{width:100px}#maincontent .thinghttptable .apikey{width:80px}input#upload_csv{padding-top:5px;margin:20px 0}#sidebar_old{font-size:14px;width:50%;padding-right:10px;margin-top:10px;margin-left:460px;margin-right:0;border:1px solid #ccc;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px}#sidebar_old ul{list-style:none;margin:15px 20px 30px 0}#sidebar_old ul li ul li{margin:0}#sidebar_old h2{color:#666;margin:0 0 6px 0;padding:0 0}#sidebar_old.wide{width:520px}#sidebar_old.medium{width:470px}#sidebar_old.narrow{width:470px;margin-left:520px}#sidebar .helplink,#sidebar_old .helplink{float:right;margin-top:5px;font-weight:normal;font-size:12px}.FL{float:left}.FR{float:right}.FN{float:none}.DT{display:table}.CL{clear:left}.CR{clear:right}.CB{clear:both}.UL{text-decoration:underline}.TAR{text-align:right}.TAC{text-align:center}.VAT{vertical-align:top}.PB10{padding-bottom:10px}.PR20{padding-right:20px}.PL20{padding-left:20px}.PL30{padding-left:30px}.MT10{margin-top:5px}.MR20{margin-right:20px}.MR60{margin-right:60px;margin-bottom:20px}.ML20{margin-left:20px}.ML60{margin-left:60px}.W50{width:50%}.W100{width:100%}.left20{position:relative;left:-20px}.up2{position:relative;top:-2px}.up20{position:relative;top:-20px}input.video_narrow{width:100px}#feature_signup a{border-bottom:3px solid #d62020;text-decoration:none;font-weight:bold}#feature_signup a:hover{text-decoration:none}#nav{list-style:none;padding:0 10px 0 92px;margin:0}#nav li{float:left;margin:0px 0px 0px 10px;padding:0px 15px 0px 0px;position:relative;font-size:14px;line-height:1.4;zoom:1}#nav li:last-child{padding:0}#nav .current-cat a,#nav .current_page_item a{color:#d62020;border-bottom:5px solid #2565A5}#nav .current-cat li a,#nav .current_page_item li a{color:#000}#nav .current-cat li a:hover,#nav .current_page_item li a:hover{color:#d62020;border-bottom:5px solid #2565A5}#nav li a{text-transform:uppercase;font-weight:bold;text-decoration:none;color:#000;border:none;text-decoration:none;float:left;border-bottom:5px solid #FFFFFF}#nav li a:hover{color:#d62020;border-bottom:5px solid #aaa}#nav li span{width:12px;height:20px;background:url("arrow-down.gif") no-repeat left 7px;margin:0;padding:0;position:absolute;right:0;top:0}#nav ul{display:none}#nav li span.child{width:12px;height:20px;background:url("arrow-right.gif") no-repeat left 10px;margin:0;padding:0;position:absolute;right:0;top:0}#nav li a.rss{background:url(rss_feed.png) right 0px no-repeat;padding:0px 30px 0px 0}#nav li a.rss:hover{background:url(rss_feed.png) right -24px no-repeat;padding:0px 30px 0px 0;border-bottom:0 solid #aaa}.ui-widget{font-size:.8em}.ui-widget-header{border:1px solid #0867A3;background:#0867a3 none top right no-repeat}.ui-progressbar{height:5px}.ui-progressbar-value{background-color:green}.ui-widget-content a{color:blue;text-decoration:underline;margin:0}.ui-widget-content p{margin:0 0 10px 10px}.column{width:470px;float:left;padding-bottom:50px;padding-left:5px}.portlet{margin:0 1em 1em 0}.portlet-header{margin:0.3em;padding:7px 7px 7px 7px}.portlet-header .ui-icon{float:right;margin-top:-2px;cursor:pointer;cursor:hand}.portlet-content{padding:0.4em}.ui-sortable-placeholder{border:1px dotted black;visibility:visible !important;height:50px !important}.ui-sortable-placeholder *{visibility:hidden}.buttonlets{float:left;overflow:hidden;max-width:95px}.tweetButton{width:80px}.facebookButton{width:85px}.googleplusButton{width:70px}.padded{margin-top:2px}.ui-button{height:19px;line-height:1em}.ui-button-text-only .ui-button-text{padding:0.2em 1em 0.2em 0.4em;font-size:12px}.ui-state-active{border:1px solid #2565a5;background:#ddd none 50% 50% repeat-x;color:#2565a5}.ui-state-default{border:1px solid #ccc;color:#2565a5}.ui-state-hover{background:#ccc none 50% 50% repeat-x}.topLink{font-size:16px}.developerlink{padding:7px;margin-left:10px;border-bottom-left-radius:15px;border-bottom-right-radius:15px;-webkit-border-bottom-left-radius:15px;-webkit-border-bottom-right-radius:15px;-moz-border-bottom-left-radius:15px;-moz-border-bottom-right-radius:15px;background-color:#aaa}.addpluginlink{color:white;padding:7px;margin-left:10px;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#aaa;cursor:pointer}.addpluginlink:hover{background-color:#ccc}.pluginrectangle{display:none;background-color:#aaa;border-radius:5px;position:absolute;height:70%;width:100%;top:30px;right:0}.developerlink:hover{background-color:#ccc}.developerlink a{color:white;text-decoration:none}.channelInfo{max-width:500px}.channelDescription{width:450px;height:60px}.socialButtons{float:right;display:inline}.dev-info-dialog{border:2px solid #bbb}.dev-info-dialog .ui-dialog-titlebar{background-color:#aaa;color:white}.dev-info-dialog a{text-decoration:underline}.ui-tabs{height:100%}.dev-info-dialog ul{list-style-type:none;background-color:whitesmoke}#devInfo{font-size:1.2em}.dev-info-dialog ul li{display:inline;list-style-type:none}.dev_info_table1{margin-bottom:10px}.dev_info_table2{margin-left:10px}.dev_info_table2 td{max-width:300px}.watchButtonLabel{white-space:nowrap;padding-right:10px}.watchButtonImage{float:left;background-position:left;background-image:url("eye.png");background-repeat:no-repeat;width:19px;height:16px}.watchButtonPadding{padding-right:5px}.chartOptions{display:none}.fade{display:none;font-size:1.2em}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #d82020;background:#f5cece url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:bold;color:#d82020}.ui-state-hover a,.ui-state-hover a:hover{color:#d82020;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #d82020;background:#f5cece url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:bold;color:#d82020}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#d82020;text-decoration:none}.ui-widget :active{outline:none}.ui-tabs .ui-tabs-panel{padding-top:0}.addportlet{padding:5px;width:50px;margin:5px;border-radius:5px;border:2px solid red;cursor:pointer;display:inline-block}.channel_stats_location{clear:right;float:right;width:475px;padding-top:23px}.channel_stats_text{font-weight:bold;font-size:1.2em}.channel_time_text{color:black;font-size:1em}.recent_status{font-family:sans-serif;margin:4px}.timeago{font-size:0.8em;color:#ccc;margin-left:10px}.com{color:#93a1a1}.lit{color:#195f91}.pun,.opn,.clo{color:#93a1a1}.fun{color:#dc322f}.str,.atv{color:#D14}.kwd,.prettyprint .tag{color:#1e347b}.typ,.atn,.dec,.var{color:teal}.pln{color:#48484c}.prettyprint{padding:8px;background-color:#f7f7f9;border:1px solid #e1e1e8}.prettyprint.linenums{-webkit-box-shadow:inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0;-moz-box-shadow:inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0;box-shadow:inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0}ol.linenums{margin:0 0 0 33px}ol.linenums li{padding-left:12px;color:#bebec5;line-height:20px;text-shadow:0 1px 0 #fff}.affix-top,.affix{position:static}#bootstrap-sidebar{background-color:#eee;border:1px solid #bbb;border-radius:5px;padding:2px 0;margin-top:20px;width:228px}#bootstrap-sidebar li a{padding:1px 8px;font-size:15px}#bootstrap-sidebar li a:hover{background-color:#fafafa}#bootstrap-sidebar li.active{border:0 #666 solid;border-right-width:4px}#bootstrap-sidebar li.subitem a{padding-left:30px;font-size:12px}@media (min-width: 979px){#bootstrap-sidebar.affix-top,#bootstrap-sidebar.affix{position:fixed;top:90px;width:228px;margin-top:0}}@media (max-width: 978px){#bootstrap-sidebar.affix-top,#bootstrap-sidebar.affix{width:100%}} diff --git a/public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css.gz b/public/assets/application-bb478adadc720a958a44ea1e6d7dd685.css.gz new file mode 100644 index 0000000000000000000000000000000000000000..d5989acb8b3f571861df7b7b4415c219abe0a9e7 GIT binary patch literal 27408 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 literal 0 HcmV?d00001 diff --git a/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json b/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json index b8f4cd3..64fc03d 100644 --- a/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json +++ b/public/assets/manifest-27c2ec8d97bd8487cae01bba17cdddb9.json @@ -1 +1 @@ -{"files":{"GitHub_ThingSpeak_API-f39bba3caddbf4af63e208b8552a98ac.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"f39bba3caddbf4af63e208b8552a98ac"},"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png":{"logical_path":"ThingSpeak_Logo.png","mtime":"2014-02-08T20:02:14-05:00","size":9258,"digest":"3139b15204b5af565fca3a5f342ef19c"},"eye-b67d3d940541ae7d0b469ed20ee92fe3.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"b67d3d940541ae7d0b469ed20ee92fe3"},"flag_gray-319110a59d1d75cad2d8f29af88fdb23.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"319110a59d1d75cad2d8f29af88fdb23"},"flag_red-16607fd54284010c4e95d5e9a3935b40.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"16607fd54284010c4e95d5e9a3935b40"},"front-b28e4f9d550ff0101a0140b1fb1ec1da.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"b28e4f9d550ff0101a0140b1fb1ec1da"},"icon_location_24-40aef0eb9d6824f7538c1056c90a2156.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"40aef0eb9d6824f7538c1056c90a2156"},"icon_rss-3ce0d86e00a9e937993988e73720950e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"3ce0d86e00a9e937993988e73720950e"},"icons/InfoBox-54072dd9794a709a9fee5ab80d4be545.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"54072dd9794a709a9fee5ab80d4be545"},"icons/Locked-84572b6d8c7a390e424483b16f28410f.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"84572b6d8c7a390e424483b16f28410f"},"icons/Public_32-2bcfb892862a4396e3a5593a5e1df202.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"2bcfb892862a4396e3a5593a5e1df202"},"icons/Unlocked-226c08041c55d88ecf7898dffe6568aa.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"226c08041c55d88ecf7898dffe6568aa"},"icons/delete-9a7fbc7ba573f4ab735f66bc17466a84.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"9a7fbc7ba573f4ab735f66bc17466a84"},"my_house_status_update-526a896242134f12bf2882dfad48fe24.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"526a896242134f12bf2882dfad48fe24"},"rails-6a9a73b3eeba7d35c79c3de6fc98b6f1.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"6a9a73b3eeba7d35c79c3de6fc98b6f1"},"react-99715cc1aac81b13fdc4384378c9cf0e.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"99715cc1aac81b13fdc4384378c9cf0e"},"scheduled_thinghttp-b525411c648770d5252475ab92925006.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"b525411c648770d5252475ab92925006"},"shading-4c8cafd8b85355f46eedb553ece6a663.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"4c8cafd8b85355f46eedb553ece6a663"},"social_sensor_network_logo-2cc4b27d8115a3efcf38c0c6539d06fe.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"2cc4b27d8115a3efcf38c0c6539d06fe"},"social_sensor_network_main-f2114a6f96a027de3c3b39aefd11a34b.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"f2114a6f96a027de3c3b39aefd11a34b"},"talkback-a8f0046a06cddead53bfe73e0a1b11b1.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"a8f0046a06cddead53bfe73e0a1b11b1"},"thinghttp-b22d0641869d4b49e8fdc1441d19bd9d.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"b22d0641869d4b49e8fdc1441d19bd9d"},"thingtweet-2f829197927298b1eb724a072adb072a.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"2f829197927298b1eb724a072adb072a"},"tweetcontrol-5fa1225bb39f188b215d5897b37c2c18.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"5fa1225bb39f188b215d5897b37c2c18"},"images/ui-bg_diagonals-thick_18_b81900_40x40-7cff5779324125bfa623755a21cb7d08.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"7cff5779324125bfa623755a21cb7d08"},"images/ui-bg_diagonals-thick_20_666666_40x40-e3476d26e53f4b2bdba1cbd4216bd169.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"e3476d26e53f4b2bdba1cbd4216bd169"},"images/ui-bg_flat_10_000000_40x100-b4d9562e67d66d83845d2edeaae222d7.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"b4d9562e67d66d83845d2edeaae222d7"},"images/ui-bg_glass_100_f6f6f6_1x400-4d37c970a424e84d47dd48ae788eaef8.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"4d37c970a424e84d47dd48ae788eaef8"},"images/ui-bg_glass_100_fdf5ce_1x400-657936ddb303bcc8c34554da5279debe.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"657936ddb303bcc8c34554da5279debe"},"images/ui-bg_glass_65_ffffff_1x400-5f18db79610dfa0b148ff6335bbc42cb.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"5f18db79610dfa0b148ff6335bbc42cb"},"images/ui-bg_gloss-wave_35_f6a828_500x100-93fadea558da2231315ae756b3be6bbf.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"93fadea558da2231315ae756b3be6bbf"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-4310274c0febae96f7f3d2f54b0a4f42.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"4310274c0febae96f7f3d2f54b0a4f42"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-21008ee33c710d7e484d7f88f2c7dc21.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"21008ee33c710d7e484d7f88f2c7dc21"},"images/ui-icons_222222_256x240-d83eeaaf84f04ca2c5d6a684bc7629af.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"d83eeaaf84f04ca2c5d6a684bc7629af"},"images/ui-icons_228ef1_256x240-65e412c112f4e7ee270afb71005fd17d.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"65e412c112f4e7ee270afb71005fd17d"},"images/ui-icons_ef8c08_256x240-8b462cb27e07227bac8bd0020d9933e4.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8b462cb27e07227bac8bd0020d9933e4"},"images/ui-icons_ffd27a_256x240-3d95bb913fb70688654b00e8ed1eb247.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"3d95bb913fb70688654b00e8ed1eb247"},"images/ui-icons_ffffff_256x240-2066cf4b1373355dbf4a2031099e1a04.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2066cf4b1373355dbf4a2031099e1a04"},"thingspeak_logo-95d6e7cb7f17bbbc1526407176244ca8.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-10T17:38:24-05:00","size":1609,"digest":"95d6e7cb7f17bbbc1526407176244ca8"},"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"c55761d06c28c72e17c9196391bf7fe4"},"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"9175769cbdc94be2e5c44c59fdd3cbcd"},"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"a465b55d9751d7d19801facf9d7d66b2"},"flag_red-87843b96f6a35694691fd624cd68a802.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"87843b96f6a35694691fd624cd68a802"},"front-44d3070595f891d9a2d88e00606c6325.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"44d3070595f891d9a2d88e00606c6325"},"icon_location_24-bf607f94a54f074c940a844771200b1b.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"bf607f94a54f074c940a844771200b1b"},"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"2687cbed842e6291c3a7b431f7bad93e"},"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"3dd7c57e5ed644dc9fa79014c10478ea"},"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"dd04ba8d213caf20f92028729f7d652b"},"icons/Public_32-40b058ba964e1b896725268b604c9c74.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"40b058ba964e1b896725268b604c9c74"},"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"d8d39a21ce887850ee0acfcaf6553d1c"},"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"1b8201e6714e82d1b6343aaa53e6ac91"},"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"d4b1ef118189a8deb613efab4dd0de51"},"rails-8a98a69213c3e39ca47a4f822df62bfb.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"8a98a69213c3e39ca47a4f822df62bfb"},"react-813abec4f0db433aa7c583c33e2332ac.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"813abec4f0db433aa7c583c33e2332ac"},"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"6151786a4ee07a2cab4c605587a75016"},"shading-0b2c43248624209936e2bf318c546c16.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"0b2c43248624209936e2bf318c546c16"},"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"4a42dbecef9e2ab82564b14592f5d05b"},"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"20c93960eee4b916ed842f414bf7fea5"},"talkback-e9f9fa607f7739892d8cd73682aba65d.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"e9f9fa607f7739892d8cd73682aba65d"},"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"bb3f9377bc76eaaff763e4f7b4a03577"},"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-17T11:45:40-05:00","size":1609,"digest":"dadc6a1037759f672179ca2d4e96ba6d"},"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"e770a29c4bb3dc128d9023f0bab6e7c6"},"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"3f52ce7cf7f2796df769016ca2487a37"},"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png":{"logical_path":"tweetcontrol_sample.png","mtime":"2011-05-25T18:23:43-04:00","size":24608,"digest":"29e6418760cec16453cc0b3b5707b7c2"},"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"8da1641e421200ea88d476a6040548f4"},"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"fbffa7c43cac930aa61ea7f15bcee131"},"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"dabfeb3662bfa05f655ed5056cce2124"},"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"ee77c8327f94bab46c89043ffce9444c"},"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"c1024fd9f647f2bf814e32f41e5632c3"},"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"61763bbe727affffa1bef63e1492d8a9"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"f4dc124a7f6d39a9c8a496120c5e8273"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"970b8bb07ae918e7591662db33b7482e"},"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"6597c301cf369830bb7171882648f85e"},"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2c0de233993aabf35f961f7c39fa9263"},"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8e46c4f4ea98a986f4e877a51e4c15c5"},"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"f6366c00a59227a55e14d94caaeea3f6"},"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"13dbadd07134115add4ebe610d444859"},"channel_public_view-81af126139a236e81d91e5a5a76d603e.png":{"logical_path":"channel_public_view.png","mtime":"2012-09-15T16:30:42-04:00","size":112757,"digest":"81af126139a236e81d91e5a5a76d603e"},"application-ef64bf5dca3690cbfde3a17b34801823.css":{"logical_path":"application.css","mtime":"2014-02-27T17:59:32-05:00","size":158638,"digest":"ef64bf5dca3690cbfde3a17b34801823"},"application-b32fe30ea714a81e0cc07fd3cb589fcd.css":{"logical_path":"application.css","mtime":"2014-03-04T23:24:59-05:00","size":158671,"digest":"b32fe30ea714a81e0cc07fd3cb589fcd"},"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css":{"logical_path":"application.css","mtime":"2014-03-13T13:04:31-04:00","size":158763,"digest":"a653aaeb8d2aaf7bdb2e8103a3983d0a"},"application-758dfe76590292f18a8ab95344e4f660.js":{"logical_path":"application.js","mtime":"2014-03-13T18:15:52-04:00","size":194664,"digest":"758dfe76590292f18a8ab95344e4f660"},"ajax-loader-02917e3c114fd83f5c4c17953aa87e83.gif":{"logical_path":"ajax-loader.gif","mtime":"2014-03-14T15:34:05-04:00","size":3208,"digest":"02917e3c114fd83f5c4c17953aa87e83"},"application-0b135d70dfcec58a528db9562b0ccf06.js":{"logical_path":"application.js","mtime":"2014-03-15T19:59:08-04:00","size":194694,"digest":"0b135d70dfcec58a528db9562b0ccf06"},"application-27fa9ecfb64199c44a5aa35e88c13270.js":{"logical_path":"application.js","mtime":"2014-03-20T11:08:53-04:00","size":194701,"digest":"27fa9ecfb64199c44a5aa35e88c13270"},"active_admin-b50063add15e7f808a148a820d74bf3d.js":{"logical_path":"active_admin.js","mtime":"2014-03-20T16:39:45-04:00","size":243506,"digest":"b50063add15e7f808a148a820d74bf3d"},"active_admin-ef03ab96648e45e8a22d6690f32d1693.css":{"logical_path":"active_admin.css","mtime":"2014-03-20T16:38:50-04:00","size":70032,"digest":"ef03ab96648e45e8a22d6690f32d1693"},"active_admin/admin_notes_icon-44589ac44518808ac8dadd1755e03161.png":{"logical_path":"active_admin/admin_notes_icon.png","mtime":"2014-03-20T16:01:41-04:00","size":716,"digest":"44589ac44518808ac8dadd1755e03161"},"active_admin/datepicker/datepicker-header-bg-bcad4373bcdc56124322dea658739849.png":{"logical_path":"active_admin/datepicker/datepicker-header-bg.png","mtime":"2014-03-20T16:01:41-04:00","size":1701,"digest":"bcad4373bcdc56124322dea658739849"},"active_admin/datepicker/datepicker-input-icon-20df875ab8a44d588cbfd3d8018a52b9.png":{"logical_path":"active_admin/datepicker/datepicker-input-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1535,"digest":"20df875ab8a44d588cbfd3d8018a52b9"},"active_admin/datepicker/datepicker-next-link-icon-f9ef6d04c65df1cb5bda725ebba623a1.png":{"logical_path":"active_admin/datepicker/datepicker-next-link-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1006,"digest":"f9ef6d04c65df1cb5bda725ebba623a1"},"active_admin/datepicker/datepicker-nipple-c6e265f4a33a97853a69662e6350cb31.png":{"logical_path":"active_admin/datepicker/datepicker-nipple.png","mtime":"2014-03-20T16:01:41-04:00","size":1224,"digest":"c6e265f4a33a97853a69662e6350cb31"},"active_admin/datepicker/datepicker-prev-link-icon-ce5f918e536f436ca2095a9e7442c6df.png":{"logical_path":"active_admin/datepicker/datepicker-prev-link-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1004,"digest":"ce5f918e536f436ca2095a9e7442c6df"},"active_admin/index_list_icons/block_icon-efadf57de7365b6e1919448c310b5f04.svg":{"logical_path":"active_admin/index_list_icons/block_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":1141,"digest":"efadf57de7365b6e1919448c310b5f04"},"active_admin/index_list_icons/blog_icon-9522bfa7d1eadd437164992512ac461f.svg":{"logical_path":"active_admin/index_list_icons/blog_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":881,"digest":"9522bfa7d1eadd437164992512ac461f"},"active_admin/index_list_icons/grid_icon-5dbe976f21a86b79408e60b949411fd5.svg":{"logical_path":"active_admin/index_list_icons/grid_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":2132,"digest":"5dbe976f21a86b79408e60b949411fd5"},"active_admin/index_list_icons/table_icon-5276b83ac60335e2891d9f0cbbf368ae.svg":{"logical_path":"active_admin/index_list_icons/table_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":815,"digest":"5276b83ac60335e2891d9f0cbbf368ae"},"active_admin/loading-aebaee21d194d63dd36be976ac42d09b.gif":{"logical_path":"active_admin/loading.gif","mtime":"2014-03-20T16:01:41-04:00","size":2079,"digest":"aebaee21d194d63dd36be976ac42d09b"},"active_admin/nested_menu_arrow-94d9c4f73e81d377f80ae8dbcc71128b.gif":{"logical_path":"active_admin/nested_menu_arrow.gif","mtime":"2014-03-20T16:01:41-04:00","size":70,"digest":"94d9c4f73e81d377f80ae8dbcc71128b"},"active_admin/nested_menu_arrow_dark-b40a488b4f4b7d25cce531a15db4037b.gif":{"logical_path":"active_admin/nested_menu_arrow_dark.gif","mtime":"2014-03-20T16:01:41-04:00","size":70,"digest":"b40a488b4f4b7d25cce531a15db4037b"},"active_admin/orderable-61b5d7f5855b4fbc6b718755d542b71b.png":{"logical_path":"active_admin/orderable.png","mtime":"2014-03-20T16:01:41-04:00","size":220,"digest":"61b5d7f5855b4fbc6b718755d542b71b"},"active_admin/application-e851fe02b20790a5242ac0333acdc2e5.js":{"logical_path":"active_admin/application.js","mtime":"2014-03-20T16:01:41-04:00","size":749,"digest":"e851fe02b20790a5242ac0333acdc2e5"},"active_admin/print-d21aee48657d1ea57f4695edbb2b1b06.css":{"logical_path":"active_admin/print.css","mtime":"2014-03-20T16:01:41-04:00","size":5460,"digest":"d21aee48657d1ea57f4695edbb2b1b06"},"jquery-ui/animated-overlay-f66f40fcb74b7b2076d2a140ad33132d.gif":{"logical_path":"jquery-ui/animated-overlay.gif","mtime":"2014-03-20T16:01:59-04:00","size":1738,"digest":"f66f40fcb74b7b2076d2a140ad33132d"},"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png":{"logical_path":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png","mtime":"2014-03-20T16:01:59-04:00","size":180,"digest":"8c3a37f71112e61b7a0f09cbc94995c9"},"jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png":{"logical_path":"jquery-ui/ui-bg_flat_75_ffffff_40x100.png","mtime":"2014-03-20T16:01:59-04:00","size":178,"digest":"3af74dc50888d335b78248a0694bbd21"},"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png":{"logical_path":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":120,"digest":"d63699c9cc07cd2ecbf3233058f1638e"},"jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"jquery-ui/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png":{"logical_path":"jquery-ui/ui-bg_glass_75_dadada_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":111,"digest":"393389b036ccddba12c4032ebba856d9"},"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-470ccb5154632a9b5118eb8246e61097.png":{"logical_path":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":110,"digest":"470ccb5154632a9b5118eb8246e61097"},"jquery-ui/ui-bg_glass_95_fef1ec_1x400-5a857f14cf3a69c2bf968f54ea5d3037.png":{"logical_path":"jquery-ui/ui-bg_glass_95_fef1ec_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":119,"digest":"5a857f14cf3a69c2bf968f54ea5d3037"},"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png":{"logical_path":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png","mtime":"2014-03-20T16:01:59-04:00","size":101,"digest":"0c2f96e44d86042e97a1a3188141d8de"},"jquery-ui/ui-icons_222222_256x240-3a92dcc42b992876335ae81da242fe5f.png":{"logical_path":"jquery-ui/ui-icons_222222_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"3a92dcc42b992876335ae81da242fe5f"},"jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png":{"logical_path":"jquery-ui/ui-icons_2e83ff_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"2c61f38ac281b30c924aa57c0e15f797"},"jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png":{"logical_path":"jquery-ui/ui-icons_454545_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"515ff3b290c7160a009324d292e3e64a"},"jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png":{"logical_path":"jquery-ui/ui-icons_888888_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"dcb64181e6f3547e73afa034c4466dfd"},"jquery-ui/ui-icons_cd0a0a_256x240-58c4a995b8b611cacb6645f6049b3935.png":{"logical_path":"jquery-ui/ui-icons_cd0a0a_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"58c4a995b8b611cacb6645f6049b3935"}},"assets":{"GitHub_ThingSpeak_API.jpg":"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg","ThingSpeak_Logo.png":"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png","eye.png":"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png","flag_gray.gif":"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif","flag_red.gif":"flag_red-87843b96f6a35694691fd624cd68a802.gif","front.png":"front-44d3070595f891d9a2d88e00606c6325.png","icon_location_24.png":"icon_location_24-bf607f94a54f074c940a844771200b1b.png","icon_rss.gif":"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif","icons/InfoBox.png":"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png","icons/Locked.png":"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png","icons/Public_32.png":"icons/Public_32-40b058ba964e1b896725268b604c9c74.png","icons/Unlocked.png":"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png","icons/delete.png":"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png","my_house_status_update.png":"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png","rails.png":"rails-8a98a69213c3e39ca47a4f822df62bfb.png","react.png":"react-813abec4f0db433aa7c583c33e2332ac.png","scheduled_thinghttp.png":"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png","shading.png":"shading-0b2c43248624209936e2bf318c546c16.png","social_sensor_network_logo.png":"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png","social_sensor_network_main.png":"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png","talkback.png":"talkback-e9f9fa607f7739892d8cd73682aba65d.png","thinghttp.png":"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png","thingtweet.png":"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png","tweetcontrol.png":"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png","application.js":"application-27fa9ecfb64199c44a5aa35e88c13270.js","application.css":"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css","images/ui-bg_diagonals-thick_18_b81900_40x40.png":"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png","images/ui-bg_diagonals-thick_20_666666_40x40.png":"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png","images/ui-bg_flat_10_000000_40x100.png":"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png","images/ui-bg_glass_100_f6f6f6_1x400.png":"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png","images/ui-bg_glass_100_fdf5ce_1x400.png":"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png","images/ui-bg_glass_65_ffffff_1x400.png":"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","images/ui-bg_gloss-wave_35_f6a828_500x100.png":"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png","images/ui-bg_highlight-soft_100_eeeeee_1x100.png":"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png","images/ui-bg_highlight-soft_75_ffe45c_1x100.png":"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png","images/ui-icons_222222_256x240.png":"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png","images/ui-icons_228ef1_256x240.png":"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png","images/ui-icons_ef8c08_256x240.png":"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png","images/ui-icons_ffd27a_256x240.png":"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png","images/ui-icons_ffffff_256x240.png":"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png","thingspeak_logo.png":"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png","tweetcontrol_sample.png":"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png","channel_public_view.png":"channel_public_view-81af126139a236e81d91e5a5a76d603e.png","ajax-loader.gif":"ajax-loader-02917e3c114fd83f5c4c17953aa87e83.gif","active_admin.js":"active_admin-b50063add15e7f808a148a820d74bf3d.js","active_admin.css":"active_admin-ef03ab96648e45e8a22d6690f32d1693.css","active_admin/admin_notes_icon.png":"active_admin/admin_notes_icon-44589ac44518808ac8dadd1755e03161.png","active_admin/datepicker/datepicker-header-bg.png":"active_admin/datepicker/datepicker-header-bg-bcad4373bcdc56124322dea658739849.png","active_admin/datepicker/datepicker-input-icon.png":"active_admin/datepicker/datepicker-input-icon-20df875ab8a44d588cbfd3d8018a52b9.png","active_admin/datepicker/datepicker-next-link-icon.png":"active_admin/datepicker/datepicker-next-link-icon-f9ef6d04c65df1cb5bda725ebba623a1.png","active_admin/datepicker/datepicker-nipple.png":"active_admin/datepicker/datepicker-nipple-c6e265f4a33a97853a69662e6350cb31.png","active_admin/datepicker/datepicker-prev-link-icon.png":"active_admin/datepicker/datepicker-prev-link-icon-ce5f918e536f436ca2095a9e7442c6df.png","active_admin/index_list_icons/block_icon.svg":"active_admin/index_list_icons/block_icon-efadf57de7365b6e1919448c310b5f04.svg","active_admin/index_list_icons/blog_icon.svg":"active_admin/index_list_icons/blog_icon-9522bfa7d1eadd437164992512ac461f.svg","active_admin/index_list_icons/grid_icon.svg":"active_admin/index_list_icons/grid_icon-5dbe976f21a86b79408e60b949411fd5.svg","active_admin/index_list_icons/table_icon.svg":"active_admin/index_list_icons/table_icon-5276b83ac60335e2891d9f0cbbf368ae.svg","active_admin/loading.gif":"active_admin/loading-aebaee21d194d63dd36be976ac42d09b.gif","active_admin/nested_menu_arrow.gif":"active_admin/nested_menu_arrow-94d9c4f73e81d377f80ae8dbcc71128b.gif","active_admin/nested_menu_arrow_dark.gif":"active_admin/nested_menu_arrow_dark-b40a488b4f4b7d25cce531a15db4037b.gif","active_admin/orderable.png":"active_admin/orderable-61b5d7f5855b4fbc6b718755d542b71b.png","active_admin/application.js":"active_admin/application-e851fe02b20790a5242ac0333acdc2e5.js","active_admin/print.css":"active_admin/print-d21aee48657d1ea57f4695edbb2b1b06.css","jquery-ui/animated-overlay.gif":"jquery-ui/animated-overlay-f66f40fcb74b7b2076d2a140ad33132d.gif","jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png","jquery-ui/ui-bg_flat_75_ffffff_40x100.png":"jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png","jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png","jquery-ui/ui-bg_glass_65_ffffff_1x400.png":"jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","jquery-ui/ui-bg_glass_75_dadada_1x400.png":"jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png","jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-470ccb5154632a9b5118eb8246e61097.png","jquery-ui/ui-bg_glass_95_fef1ec_1x400.png":"jquery-ui/ui-bg_glass_95_fef1ec_1x400-5a857f14cf3a69c2bf968f54ea5d3037.png","jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png","jquery-ui/ui-icons_222222_256x240.png":"jquery-ui/ui-icons_222222_256x240-3a92dcc42b992876335ae81da242fe5f.png","jquery-ui/ui-icons_2e83ff_256x240.png":"jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png","jquery-ui/ui-icons_454545_256x240.png":"jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png","jquery-ui/ui-icons_888888_256x240.png":"jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png","jquery-ui/ui-icons_cd0a0a_256x240.png":"jquery-ui/ui-icons_cd0a0a_256x240-58c4a995b8b611cacb6645f6049b3935.png"}} \ No newline at end of file +{"files":{"GitHub_ThingSpeak_API-f39bba3caddbf4af63e208b8552a98ac.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"f39bba3caddbf4af63e208b8552a98ac"},"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png":{"logical_path":"ThingSpeak_Logo.png","mtime":"2014-02-08T20:02:14-05:00","size":9258,"digest":"3139b15204b5af565fca3a5f342ef19c"},"eye-b67d3d940541ae7d0b469ed20ee92fe3.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"b67d3d940541ae7d0b469ed20ee92fe3"},"flag_gray-319110a59d1d75cad2d8f29af88fdb23.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"319110a59d1d75cad2d8f29af88fdb23"},"flag_red-16607fd54284010c4e95d5e9a3935b40.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"16607fd54284010c4e95d5e9a3935b40"},"front-b28e4f9d550ff0101a0140b1fb1ec1da.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"b28e4f9d550ff0101a0140b1fb1ec1da"},"icon_location_24-40aef0eb9d6824f7538c1056c90a2156.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"40aef0eb9d6824f7538c1056c90a2156"},"icon_rss-3ce0d86e00a9e937993988e73720950e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"3ce0d86e00a9e937993988e73720950e"},"icons/InfoBox-54072dd9794a709a9fee5ab80d4be545.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"54072dd9794a709a9fee5ab80d4be545"},"icons/Locked-84572b6d8c7a390e424483b16f28410f.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"84572b6d8c7a390e424483b16f28410f"},"icons/Public_32-2bcfb892862a4396e3a5593a5e1df202.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"2bcfb892862a4396e3a5593a5e1df202"},"icons/Unlocked-226c08041c55d88ecf7898dffe6568aa.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"226c08041c55d88ecf7898dffe6568aa"},"icons/delete-9a7fbc7ba573f4ab735f66bc17466a84.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"9a7fbc7ba573f4ab735f66bc17466a84"},"my_house_status_update-526a896242134f12bf2882dfad48fe24.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"526a896242134f12bf2882dfad48fe24"},"rails-6a9a73b3eeba7d35c79c3de6fc98b6f1.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"6a9a73b3eeba7d35c79c3de6fc98b6f1"},"react-99715cc1aac81b13fdc4384378c9cf0e.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"99715cc1aac81b13fdc4384378c9cf0e"},"scheduled_thinghttp-b525411c648770d5252475ab92925006.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"b525411c648770d5252475ab92925006"},"shading-4c8cafd8b85355f46eedb553ece6a663.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"4c8cafd8b85355f46eedb553ece6a663"},"social_sensor_network_logo-2cc4b27d8115a3efcf38c0c6539d06fe.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"2cc4b27d8115a3efcf38c0c6539d06fe"},"social_sensor_network_main-f2114a6f96a027de3c3b39aefd11a34b.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"f2114a6f96a027de3c3b39aefd11a34b"},"talkback-a8f0046a06cddead53bfe73e0a1b11b1.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"a8f0046a06cddead53bfe73e0a1b11b1"},"thinghttp-b22d0641869d4b49e8fdc1441d19bd9d.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"b22d0641869d4b49e8fdc1441d19bd9d"},"thingtweet-2f829197927298b1eb724a072adb072a.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"2f829197927298b1eb724a072adb072a"},"tweetcontrol-5fa1225bb39f188b215d5897b37c2c18.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"5fa1225bb39f188b215d5897b37c2c18"},"images/ui-bg_diagonals-thick_18_b81900_40x40-7cff5779324125bfa623755a21cb7d08.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"7cff5779324125bfa623755a21cb7d08"},"images/ui-bg_diagonals-thick_20_666666_40x40-e3476d26e53f4b2bdba1cbd4216bd169.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"e3476d26e53f4b2bdba1cbd4216bd169"},"images/ui-bg_flat_10_000000_40x100-b4d9562e67d66d83845d2edeaae222d7.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"b4d9562e67d66d83845d2edeaae222d7"},"images/ui-bg_glass_100_f6f6f6_1x400-4d37c970a424e84d47dd48ae788eaef8.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"4d37c970a424e84d47dd48ae788eaef8"},"images/ui-bg_glass_100_fdf5ce_1x400-657936ddb303bcc8c34554da5279debe.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"657936ddb303bcc8c34554da5279debe"},"images/ui-bg_glass_65_ffffff_1x400-5f18db79610dfa0b148ff6335bbc42cb.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"5f18db79610dfa0b148ff6335bbc42cb"},"images/ui-bg_gloss-wave_35_f6a828_500x100-93fadea558da2231315ae756b3be6bbf.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"93fadea558da2231315ae756b3be6bbf"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-4310274c0febae96f7f3d2f54b0a4f42.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"4310274c0febae96f7f3d2f54b0a4f42"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-21008ee33c710d7e484d7f88f2c7dc21.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"21008ee33c710d7e484d7f88f2c7dc21"},"images/ui-icons_222222_256x240-d83eeaaf84f04ca2c5d6a684bc7629af.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"d83eeaaf84f04ca2c5d6a684bc7629af"},"images/ui-icons_228ef1_256x240-65e412c112f4e7ee270afb71005fd17d.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"65e412c112f4e7ee270afb71005fd17d"},"images/ui-icons_ef8c08_256x240-8b462cb27e07227bac8bd0020d9933e4.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8b462cb27e07227bac8bd0020d9933e4"},"images/ui-icons_ffd27a_256x240-3d95bb913fb70688654b00e8ed1eb247.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"3d95bb913fb70688654b00e8ed1eb247"},"images/ui-icons_ffffff_256x240-2066cf4b1373355dbf4a2031099e1a04.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2066cf4b1373355dbf4a2031099e1a04"},"thingspeak_logo-95d6e7cb7f17bbbc1526407176244ca8.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-10T17:38:24-05:00","size":1609,"digest":"95d6e7cb7f17bbbc1526407176244ca8"},"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg":{"logical_path":"GitHub_ThingSpeak_API.jpg","mtime":"2014-02-08T20:02:14-05:00","size":26303,"digest":"c55761d06c28c72e17c9196391bf7fe4"},"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png":{"logical_path":"eye.png","mtime":"2014-02-08T20:02:14-05:00","size":3294,"digest":"9175769cbdc94be2e5c44c59fdd3cbcd"},"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif":{"logical_path":"flag_gray.gif","mtime":"2014-02-08T20:02:14-05:00","size":983,"digest":"a465b55d9751d7d19801facf9d7d66b2"},"flag_red-87843b96f6a35694691fd624cd68a802.gif":{"logical_path":"flag_red.gif","mtime":"2014-02-08T20:02:14-05:00","size":987,"digest":"87843b96f6a35694691fd624cd68a802"},"front-44d3070595f891d9a2d88e00606c6325.png":{"logical_path":"front.png","mtime":"2014-02-08T20:02:14-05:00","size":17717,"digest":"44d3070595f891d9a2d88e00606c6325"},"icon_location_24-bf607f94a54f074c940a844771200b1b.png":{"logical_path":"icon_location_24.png","mtime":"2014-02-08T20:01:43-05:00","size":618,"digest":"bf607f94a54f074c940a844771200b1b"},"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif":{"logical_path":"icon_rss.gif","mtime":"2014-02-08T20:02:14-05:00","size":1008,"digest":"2687cbed842e6291c3a7b431f7bad93e"},"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png":{"logical_path":"icons/InfoBox.png","mtime":"2014-02-08T20:02:14-05:00","size":837,"digest":"3dd7c57e5ed644dc9fa79014c10478ea"},"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png":{"logical_path":"icons/Locked.png","mtime":"2014-02-08T20:02:14-05:00","size":1882,"digest":"dd04ba8d213caf20f92028729f7d652b"},"icons/Public_32-40b058ba964e1b896725268b604c9c74.png":{"logical_path":"icons/Public_32.png","mtime":"2014-02-08T20:02:14-05:00","size":4788,"digest":"40b058ba964e1b896725268b604c9c74"},"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png":{"logical_path":"icons/Unlocked.png","mtime":"2014-02-08T20:02:14-05:00","size":1652,"digest":"d8d39a21ce887850ee0acfcaf6553d1c"},"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png":{"logical_path":"icons/delete.png","mtime":"2014-02-08T20:02:14-05:00","size":715,"digest":"1b8201e6714e82d1b6343aaa53e6ac91"},"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png":{"logical_path":"my_house_status_update.png","mtime":"2014-02-08T20:02:14-05:00","size":13437,"digest":"d4b1ef118189a8deb613efab4dd0de51"},"rails-8a98a69213c3e39ca47a4f822df62bfb.png":{"logical_path":"rails.png","mtime":"2014-02-08T20:02:14-05:00","size":6646,"digest":"8a98a69213c3e39ca47a4f822df62bfb"},"react-813abec4f0db433aa7c583c33e2332ac.png":{"logical_path":"react.png","mtime":"2014-02-08T20:02:14-05:00","size":2996,"digest":"813abec4f0db433aa7c583c33e2332ac"},"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png":{"logical_path":"scheduled_thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":8677,"digest":"6151786a4ee07a2cab4c605587a75016"},"shading-0b2c43248624209936e2bf318c546c16.png":{"logical_path":"shading.png","mtime":"2014-02-08T20:02:14-05:00","size":565,"digest":"0b2c43248624209936e2bf318c546c16"},"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png":{"logical_path":"social_sensor_network_logo.png","mtime":"2014-02-08T20:02:14-05:00","size":15370,"digest":"4a42dbecef9e2ab82564b14592f5d05b"},"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png":{"logical_path":"social_sensor_network_main.png","mtime":"2014-02-08T20:02:14-05:00","size":132931,"digest":"20c93960eee4b916ed842f414bf7fea5"},"talkback-e9f9fa607f7739892d8cd73682aba65d.png":{"logical_path":"talkback.png","mtime":"2014-02-08T20:02:14-05:00","size":5183,"digest":"e9f9fa607f7739892d8cd73682aba65d"},"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png":{"logical_path":"thinghttp.png","mtime":"2014-02-08T20:02:14-05:00","size":5918,"digest":"bb3f9377bc76eaaff763e4f7b4a03577"},"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png":{"logical_path":"thingspeak_logo.png","mtime":"2014-02-17T11:45:40-05:00","size":1609,"digest":"dadc6a1037759f672179ca2d4e96ba6d"},"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png":{"logical_path":"thingtweet.png","mtime":"2014-02-08T20:02:14-05:00","size":4075,"digest":"e770a29c4bb3dc128d9023f0bab6e7c6"},"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png":{"logical_path":"tweetcontrol.png","mtime":"2014-02-08T20:02:14-05:00","size":13429,"digest":"3f52ce7cf7f2796df769016ca2487a37"},"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png":{"logical_path":"tweetcontrol_sample.png","mtime":"2011-05-25T18:23:43-04:00","size":24608,"digest":"29e6418760cec16453cc0b3b5707b7c2"},"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png":{"logical_path":"images/ui-bg_diagonals-thick_18_b81900_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":260,"digest":"8da1641e421200ea88d476a6040548f4"},"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png":{"logical_path":"images/ui-bg_diagonals-thick_20_666666_40x40.png","mtime":"2014-02-08T20:01:44-05:00","size":251,"digest":"fbffa7c43cac930aa61ea7f15bcee131"},"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png":{"logical_path":"images/ui-bg_flat_10_000000_40x100.png","mtime":"2014-02-08T20:02:14-05:00","size":178,"digest":"dabfeb3662bfa05f655ed5056cce2124"},"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png":{"logical_path":"images/ui-bg_glass_100_f6f6f6_1x400.png","mtime":"2014-02-08T20:01:44-05:00","size":104,"digest":"ee77c8327f94bab46c89043ffce9444c"},"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png":{"logical_path":"images/ui-bg_glass_100_fdf5ce_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":125,"digest":"c1024fd9f647f2bf814e32f41e5632c3"},"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"images/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-02-08T20:02:14-05:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png":{"logical_path":"images/ui-bg_gloss-wave_35_f6a828_500x100.png","mtime":"2014-02-08T20:02:14-05:00","size":3762,"digest":"61763bbe727affffa1bef63e1492d8a9"},"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png":{"logical_path":"images/ui-bg_highlight-soft_100_eeeeee_1x100.png","mtime":"2014-02-08T20:01:44-05:00","size":90,"digest":"f4dc124a7f6d39a9c8a496120c5e8273"},"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png":{"logical_path":"images/ui-bg_highlight-soft_75_ffe45c_1x100.png","mtime":"2014-02-08T20:02:14-05:00","size":129,"digest":"970b8bb07ae918e7591662db33b7482e"},"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png":{"logical_path":"images/ui-icons_222222_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"6597c301cf369830bb7171882648f85e"},"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png":{"logical_path":"images/ui-icons_228ef1_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"2c0de233993aabf35f961f7c39fa9263"},"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png":{"logical_path":"images/ui-icons_ef8c08_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"8e46c4f4ea98a986f4e877a51e4c15c5"},"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png":{"logical_path":"images/ui-icons_ffd27a_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"f6366c00a59227a55e14d94caaeea3f6"},"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png":{"logical_path":"images/ui-icons_ffffff_256x240.png","mtime":"2014-02-08T20:02:14-05:00","size":4369,"digest":"13dbadd07134115add4ebe610d444859"},"channel_public_view-81af126139a236e81d91e5a5a76d603e.png":{"logical_path":"channel_public_view.png","mtime":"2012-09-15T16:30:42-04:00","size":112757,"digest":"81af126139a236e81d91e5a5a76d603e"},"application-b32fe30ea714a81e0cc07fd3cb589fcd.css":{"logical_path":"application.css","mtime":"2014-03-04T23:24:59-05:00","size":158671,"digest":"b32fe30ea714a81e0cc07fd3cb589fcd"},"application-a653aaeb8d2aaf7bdb2e8103a3983d0a.css":{"logical_path":"application.css","mtime":"2014-03-13T13:04:31-04:00","size":158763,"digest":"a653aaeb8d2aaf7bdb2e8103a3983d0a"},"application-758dfe76590292f18a8ab95344e4f660.js":{"logical_path":"application.js","mtime":"2014-03-13T18:15:52-04:00","size":194664,"digest":"758dfe76590292f18a8ab95344e4f660"},"ajax-loader-02917e3c114fd83f5c4c17953aa87e83.gif":{"logical_path":"ajax-loader.gif","mtime":"2014-03-14T15:34:05-04:00","size":3208,"digest":"02917e3c114fd83f5c4c17953aa87e83"},"application-0b135d70dfcec58a528db9562b0ccf06.js":{"logical_path":"application.js","mtime":"2014-03-15T19:59:08-04:00","size":194694,"digest":"0b135d70dfcec58a528db9562b0ccf06"},"application-27fa9ecfb64199c44a5aa35e88c13270.js":{"logical_path":"application.js","mtime":"2014-03-20T11:08:53-04:00","size":194701,"digest":"27fa9ecfb64199c44a5aa35e88c13270"},"active_admin-b50063add15e7f808a148a820d74bf3d.js":{"logical_path":"active_admin.js","mtime":"2014-03-20T16:39:45-04:00","size":243506,"digest":"b50063add15e7f808a148a820d74bf3d"},"active_admin-ef03ab96648e45e8a22d6690f32d1693.css":{"logical_path":"active_admin.css","mtime":"2014-03-20T16:38:50-04:00","size":70032,"digest":"ef03ab96648e45e8a22d6690f32d1693"},"active_admin/admin_notes_icon-44589ac44518808ac8dadd1755e03161.png":{"logical_path":"active_admin/admin_notes_icon.png","mtime":"2014-03-20T16:01:41-04:00","size":716,"digest":"44589ac44518808ac8dadd1755e03161"},"active_admin/datepicker/datepicker-header-bg-bcad4373bcdc56124322dea658739849.png":{"logical_path":"active_admin/datepicker/datepicker-header-bg.png","mtime":"2014-03-20T16:01:41-04:00","size":1701,"digest":"bcad4373bcdc56124322dea658739849"},"active_admin/datepicker/datepicker-input-icon-20df875ab8a44d588cbfd3d8018a52b9.png":{"logical_path":"active_admin/datepicker/datepicker-input-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1535,"digest":"20df875ab8a44d588cbfd3d8018a52b9"},"active_admin/datepicker/datepicker-next-link-icon-f9ef6d04c65df1cb5bda725ebba623a1.png":{"logical_path":"active_admin/datepicker/datepicker-next-link-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1006,"digest":"f9ef6d04c65df1cb5bda725ebba623a1"},"active_admin/datepicker/datepicker-nipple-c6e265f4a33a97853a69662e6350cb31.png":{"logical_path":"active_admin/datepicker/datepicker-nipple.png","mtime":"2014-03-20T16:01:41-04:00","size":1224,"digest":"c6e265f4a33a97853a69662e6350cb31"},"active_admin/datepicker/datepicker-prev-link-icon-ce5f918e536f436ca2095a9e7442c6df.png":{"logical_path":"active_admin/datepicker/datepicker-prev-link-icon.png","mtime":"2014-03-20T16:01:41-04:00","size":1004,"digest":"ce5f918e536f436ca2095a9e7442c6df"},"active_admin/index_list_icons/block_icon-efadf57de7365b6e1919448c310b5f04.svg":{"logical_path":"active_admin/index_list_icons/block_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":1141,"digest":"efadf57de7365b6e1919448c310b5f04"},"active_admin/index_list_icons/blog_icon-9522bfa7d1eadd437164992512ac461f.svg":{"logical_path":"active_admin/index_list_icons/blog_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":881,"digest":"9522bfa7d1eadd437164992512ac461f"},"active_admin/index_list_icons/grid_icon-5dbe976f21a86b79408e60b949411fd5.svg":{"logical_path":"active_admin/index_list_icons/grid_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":2132,"digest":"5dbe976f21a86b79408e60b949411fd5"},"active_admin/index_list_icons/table_icon-5276b83ac60335e2891d9f0cbbf368ae.svg":{"logical_path":"active_admin/index_list_icons/table_icon.svg","mtime":"2014-03-20T16:01:41-04:00","size":815,"digest":"5276b83ac60335e2891d9f0cbbf368ae"},"active_admin/loading-aebaee21d194d63dd36be976ac42d09b.gif":{"logical_path":"active_admin/loading.gif","mtime":"2014-03-20T16:01:41-04:00","size":2079,"digest":"aebaee21d194d63dd36be976ac42d09b"},"active_admin/nested_menu_arrow-94d9c4f73e81d377f80ae8dbcc71128b.gif":{"logical_path":"active_admin/nested_menu_arrow.gif","mtime":"2014-03-20T16:01:41-04:00","size":70,"digest":"94d9c4f73e81d377f80ae8dbcc71128b"},"active_admin/nested_menu_arrow_dark-b40a488b4f4b7d25cce531a15db4037b.gif":{"logical_path":"active_admin/nested_menu_arrow_dark.gif","mtime":"2014-03-20T16:01:41-04:00","size":70,"digest":"b40a488b4f4b7d25cce531a15db4037b"},"active_admin/orderable-61b5d7f5855b4fbc6b718755d542b71b.png":{"logical_path":"active_admin/orderable.png","mtime":"2014-03-20T16:01:41-04:00","size":220,"digest":"61b5d7f5855b4fbc6b718755d542b71b"},"active_admin/application-e851fe02b20790a5242ac0333acdc2e5.js":{"logical_path":"active_admin/application.js","mtime":"2014-03-20T16:01:41-04:00","size":749,"digest":"e851fe02b20790a5242ac0333acdc2e5"},"active_admin/print-d21aee48657d1ea57f4695edbb2b1b06.css":{"logical_path":"active_admin/print.css","mtime":"2014-03-20T16:01:41-04:00","size":5460,"digest":"d21aee48657d1ea57f4695edbb2b1b06"},"jquery-ui/animated-overlay-f66f40fcb74b7b2076d2a140ad33132d.gif":{"logical_path":"jquery-ui/animated-overlay.gif","mtime":"2014-03-20T16:01:59-04:00","size":1738,"digest":"f66f40fcb74b7b2076d2a140ad33132d"},"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png":{"logical_path":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png","mtime":"2014-03-20T16:01:59-04:00","size":180,"digest":"8c3a37f71112e61b7a0f09cbc94995c9"},"jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png":{"logical_path":"jquery-ui/ui-bg_flat_75_ffffff_40x100.png","mtime":"2014-03-20T16:01:59-04:00","size":178,"digest":"3af74dc50888d335b78248a0694bbd21"},"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png":{"logical_path":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":120,"digest":"d63699c9cc07cd2ecbf3233058f1638e"},"jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png":{"logical_path":"jquery-ui/ui-bg_glass_65_ffffff_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":105,"digest":"6879b674aed618d3df27bd2027469557"},"jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png":{"logical_path":"jquery-ui/ui-bg_glass_75_dadada_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":111,"digest":"393389b036ccddba12c4032ebba856d9"},"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-470ccb5154632a9b5118eb8246e61097.png":{"logical_path":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":110,"digest":"470ccb5154632a9b5118eb8246e61097"},"jquery-ui/ui-bg_glass_95_fef1ec_1x400-5a857f14cf3a69c2bf968f54ea5d3037.png":{"logical_path":"jquery-ui/ui-bg_glass_95_fef1ec_1x400.png","mtime":"2014-03-20T16:01:59-04:00","size":119,"digest":"5a857f14cf3a69c2bf968f54ea5d3037"},"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png":{"logical_path":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png","mtime":"2014-03-20T16:01:59-04:00","size":101,"digest":"0c2f96e44d86042e97a1a3188141d8de"},"jquery-ui/ui-icons_222222_256x240-3a92dcc42b992876335ae81da242fe5f.png":{"logical_path":"jquery-ui/ui-icons_222222_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"3a92dcc42b992876335ae81da242fe5f"},"jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png":{"logical_path":"jquery-ui/ui-icons_2e83ff_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"2c61f38ac281b30c924aa57c0e15f797"},"jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png":{"logical_path":"jquery-ui/ui-icons_454545_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"515ff3b290c7160a009324d292e3e64a"},"jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png":{"logical_path":"jquery-ui/ui-icons_888888_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"dcb64181e6f3547e73afa034c4466dfd"},"jquery-ui/ui-icons_cd0a0a_256x240-58c4a995b8b611cacb6645f6049b3935.png":{"logical_path":"jquery-ui/ui-icons_cd0a0a_256x240.png","mtime":"2014-03-20T16:01:59-04:00","size":4369,"digest":"58c4a995b8b611cacb6645f6049b3935"},"application-bb478adadc720a958a44ea1e6d7dd685.css":{"logical_path":"application.css","mtime":"2014-03-26T01:02:01-04:00","size":158800,"digest":"bb478adadc720a958a44ea1e6d7dd685"}},"assets":{"GitHub_ThingSpeak_API.jpg":"GitHub_ThingSpeak_API-c55761d06c28c72e17c9196391bf7fe4.jpg","ThingSpeak_Logo.png":"ThingSpeak_Logo-3139b15204b5af565fca3a5f342ef19c.png","eye.png":"eye-9175769cbdc94be2e5c44c59fdd3cbcd.png","flag_gray.gif":"flag_gray-a465b55d9751d7d19801facf9d7d66b2.gif","flag_red.gif":"flag_red-87843b96f6a35694691fd624cd68a802.gif","front.png":"front-44d3070595f891d9a2d88e00606c6325.png","icon_location_24.png":"icon_location_24-bf607f94a54f074c940a844771200b1b.png","icon_rss.gif":"icon_rss-2687cbed842e6291c3a7b431f7bad93e.gif","icons/InfoBox.png":"icons/InfoBox-3dd7c57e5ed644dc9fa79014c10478ea.png","icons/Locked.png":"icons/Locked-dd04ba8d213caf20f92028729f7d652b.png","icons/Public_32.png":"icons/Public_32-40b058ba964e1b896725268b604c9c74.png","icons/Unlocked.png":"icons/Unlocked-d8d39a21ce887850ee0acfcaf6553d1c.png","icons/delete.png":"icons/delete-1b8201e6714e82d1b6343aaa53e6ac91.png","my_house_status_update.png":"my_house_status_update-d4b1ef118189a8deb613efab4dd0de51.png","rails.png":"rails-8a98a69213c3e39ca47a4f822df62bfb.png","react.png":"react-813abec4f0db433aa7c583c33e2332ac.png","scheduled_thinghttp.png":"scheduled_thinghttp-6151786a4ee07a2cab4c605587a75016.png","shading.png":"shading-0b2c43248624209936e2bf318c546c16.png","social_sensor_network_logo.png":"social_sensor_network_logo-4a42dbecef9e2ab82564b14592f5d05b.png","social_sensor_network_main.png":"social_sensor_network_main-20c93960eee4b916ed842f414bf7fea5.png","talkback.png":"talkback-e9f9fa607f7739892d8cd73682aba65d.png","thinghttp.png":"thinghttp-bb3f9377bc76eaaff763e4f7b4a03577.png","thingtweet.png":"thingtweet-e770a29c4bb3dc128d9023f0bab6e7c6.png","tweetcontrol.png":"tweetcontrol-3f52ce7cf7f2796df769016ca2487a37.png","application.js":"application-27fa9ecfb64199c44a5aa35e88c13270.js","application.css":"application-bb478adadc720a958a44ea1e6d7dd685.css","images/ui-bg_diagonals-thick_18_b81900_40x40.png":"images/ui-bg_diagonals-thick_18_b81900_40x40-8da1641e421200ea88d476a6040548f4.png","images/ui-bg_diagonals-thick_20_666666_40x40.png":"images/ui-bg_diagonals-thick_20_666666_40x40-fbffa7c43cac930aa61ea7f15bcee131.png","images/ui-bg_flat_10_000000_40x100.png":"images/ui-bg_flat_10_000000_40x100-dabfeb3662bfa05f655ed5056cce2124.png","images/ui-bg_glass_100_f6f6f6_1x400.png":"images/ui-bg_glass_100_f6f6f6_1x400-ee77c8327f94bab46c89043ffce9444c.png","images/ui-bg_glass_100_fdf5ce_1x400.png":"images/ui-bg_glass_100_fdf5ce_1x400-c1024fd9f647f2bf814e32f41e5632c3.png","images/ui-bg_glass_65_ffffff_1x400.png":"images/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","images/ui-bg_gloss-wave_35_f6a828_500x100.png":"images/ui-bg_gloss-wave_35_f6a828_500x100-61763bbe727affffa1bef63e1492d8a9.png","images/ui-bg_highlight-soft_100_eeeeee_1x100.png":"images/ui-bg_highlight-soft_100_eeeeee_1x100-f4dc124a7f6d39a9c8a496120c5e8273.png","images/ui-bg_highlight-soft_75_ffe45c_1x100.png":"images/ui-bg_highlight-soft_75_ffe45c_1x100-970b8bb07ae918e7591662db33b7482e.png","images/ui-icons_222222_256x240.png":"images/ui-icons_222222_256x240-6597c301cf369830bb7171882648f85e.png","images/ui-icons_228ef1_256x240.png":"images/ui-icons_228ef1_256x240-2c0de233993aabf35f961f7c39fa9263.png","images/ui-icons_ef8c08_256x240.png":"images/ui-icons_ef8c08_256x240-8e46c4f4ea98a986f4e877a51e4c15c5.png","images/ui-icons_ffd27a_256x240.png":"images/ui-icons_ffd27a_256x240-f6366c00a59227a55e14d94caaeea3f6.png","images/ui-icons_ffffff_256x240.png":"images/ui-icons_ffffff_256x240-13dbadd07134115add4ebe610d444859.png","thingspeak_logo.png":"thingspeak_logo-dadc6a1037759f672179ca2d4e96ba6d.png","tweetcontrol_sample.png":"tweetcontrol_sample-29e6418760cec16453cc0b3b5707b7c2.png","channel_public_view.png":"channel_public_view-81af126139a236e81d91e5a5a76d603e.png","ajax-loader.gif":"ajax-loader-02917e3c114fd83f5c4c17953aa87e83.gif","active_admin.js":"active_admin-b50063add15e7f808a148a820d74bf3d.js","active_admin.css":"active_admin-ef03ab96648e45e8a22d6690f32d1693.css","active_admin/admin_notes_icon.png":"active_admin/admin_notes_icon-44589ac44518808ac8dadd1755e03161.png","active_admin/datepicker/datepicker-header-bg.png":"active_admin/datepicker/datepicker-header-bg-bcad4373bcdc56124322dea658739849.png","active_admin/datepicker/datepicker-input-icon.png":"active_admin/datepicker/datepicker-input-icon-20df875ab8a44d588cbfd3d8018a52b9.png","active_admin/datepicker/datepicker-next-link-icon.png":"active_admin/datepicker/datepicker-next-link-icon-f9ef6d04c65df1cb5bda725ebba623a1.png","active_admin/datepicker/datepicker-nipple.png":"active_admin/datepicker/datepicker-nipple-c6e265f4a33a97853a69662e6350cb31.png","active_admin/datepicker/datepicker-prev-link-icon.png":"active_admin/datepicker/datepicker-prev-link-icon-ce5f918e536f436ca2095a9e7442c6df.png","active_admin/index_list_icons/block_icon.svg":"active_admin/index_list_icons/block_icon-efadf57de7365b6e1919448c310b5f04.svg","active_admin/index_list_icons/blog_icon.svg":"active_admin/index_list_icons/blog_icon-9522bfa7d1eadd437164992512ac461f.svg","active_admin/index_list_icons/grid_icon.svg":"active_admin/index_list_icons/grid_icon-5dbe976f21a86b79408e60b949411fd5.svg","active_admin/index_list_icons/table_icon.svg":"active_admin/index_list_icons/table_icon-5276b83ac60335e2891d9f0cbbf368ae.svg","active_admin/loading.gif":"active_admin/loading-aebaee21d194d63dd36be976ac42d09b.gif","active_admin/nested_menu_arrow.gif":"active_admin/nested_menu_arrow-94d9c4f73e81d377f80ae8dbcc71128b.gif","active_admin/nested_menu_arrow_dark.gif":"active_admin/nested_menu_arrow_dark-b40a488b4f4b7d25cce531a15db4037b.gif","active_admin/orderable.png":"active_admin/orderable-61b5d7f5855b4fbc6b718755d542b71b.png","active_admin/application.js":"active_admin/application-e851fe02b20790a5242ac0333acdc2e5.js","active_admin/print.css":"active_admin/print-d21aee48657d1ea57f4695edbb2b1b06.css","jquery-ui/animated-overlay.gif":"jquery-ui/animated-overlay-f66f40fcb74b7b2076d2a140ad33132d.gif","jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-8c3a37f71112e61b7a0f09cbc94995c9.png","jquery-ui/ui-bg_flat_75_ffffff_40x100.png":"jquery-ui/ui-bg_flat_75_ffffff_40x100-3af74dc50888d335b78248a0694bbd21.png","jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-d63699c9cc07cd2ecbf3233058f1638e.png","jquery-ui/ui-bg_glass_65_ffffff_1x400.png":"jquery-ui/ui-bg_glass_65_ffffff_1x400-6879b674aed618d3df27bd2027469557.png","jquery-ui/ui-bg_glass_75_dadada_1x400.png":"jquery-ui/ui-bg_glass_75_dadada_1x400-393389b036ccddba12c4032ebba856d9.png","jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-470ccb5154632a9b5118eb8246e61097.png","jquery-ui/ui-bg_glass_95_fef1ec_1x400.png":"jquery-ui/ui-bg_glass_95_fef1ec_1x400-5a857f14cf3a69c2bf968f54ea5d3037.png","jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-0c2f96e44d86042e97a1a3188141d8de.png","jquery-ui/ui-icons_222222_256x240.png":"jquery-ui/ui-icons_222222_256x240-3a92dcc42b992876335ae81da242fe5f.png","jquery-ui/ui-icons_2e83ff_256x240.png":"jquery-ui/ui-icons_2e83ff_256x240-2c61f38ac281b30c924aa57c0e15f797.png","jquery-ui/ui-icons_454545_256x240.png":"jquery-ui/ui-icons_454545_256x240-515ff3b290c7160a009324d292e3e64a.png","jquery-ui/ui-icons_888888_256x240.png":"jquery-ui/ui-icons_888888_256x240-dcb64181e6f3547e73afa034c4466dfd.png","jquery-ui/ui-icons_cd0a0a_256x240.png":"jquery-ui/ui-icons_cd0a0a_256x240-58c4a995b8b611cacb6645f6049b3935.png"}} \ No newline at end of file diff --git a/spec/controllers/channels_controller_spec.rb b/spec/controllers/channels_controller_spec.rb index 6c5b3be..8ae25be 100644 --- a/spec/controllers/channels_controller_spec.rb +++ b/spec/controllers/channels_controller_spec.rb @@ -21,7 +21,7 @@ describe ChannelsController do it "should allow a new channel to be created" do post :create response.should be_redirect - channel_id = Channel.find(:all).last.id + channel_id = Channel.all.last.id response.should redirect_to( channel_path(channel_id, :anchor => "channelsettings")) end @@ -38,8 +38,6 @@ describe ChannelsController do @channel_no_more = Channel.find_by_id(@channel.id) @channel_no_more.should be_nil end - - end describe "Not Logged In" do @@ -109,5 +107,72 @@ describe ChannelsController do end + describe "API" do + before :each do + @user = FactoryGirl.create(:user) + @channel = FactoryGirl.create(:channel) + @feed = FactoryGirl.create(:feed, :field1 => 10, :channel => @channel) + end + + describe "create channel" do + it 'creates a channel' do + post :create, {:key => @user.api_key, :name => 'mychannel'} + response.should be_redirect + channel_id = Channel.all.last.id + response.should redirect_to(channel_path(channel_id, :anchor => "channelsettings")) + end + it 'returns JSON' do + post :create, {:key => @user.api_key, :name => 'mychannel', :format => 'json'} + JSON.parse(response.body)['name'].should eq("mychannel") + end + it 'returns XML' do + post :create, {:key => @user.api_key, :name => 'mychannel', :description => 'mydesc', :format => 'xml'} + Nokogiri::XML(response.body).css('description').text.should eq("mydesc") + end + end + + describe "clear channel" do + it 'clears a channel' do + @channel.feeds.count.should eq(1) + delete :clear, {:id => @channel.id, :key => @user.api_key} + @channel.feeds.count.should eq(0) + response.should be_redirect + response.should redirect_to(channel_path(@channel.id)) + end + it 'returns JSON' do + @channel.feeds.count.should eq(1) + delete :clear, {:id => @channel.id, :key => @user.api_key, :format => 'json'} + @channel.feeds.count.should eq(0) + JSON.parse(response.body).should eq([]) + end + it 'returns XML' do + @channel.feeds.count.should eq(1) + delete :clear, {:id => @channel.id, :key => @user.api_key, :format => 'xml'} + @channel.feeds.count.should eq(0) + Nokogiri::XML(response.body).css('nil-classes').text.should eq('') + end + end + + describe "delete channel" do + it 'deletes a channel' do + delete :destroy, {:id => @channel.id, :key => @user.api_key} + Channel.find_by_id(@channel.id).should be_nil + response.should be_redirect + response.should redirect_to(channels_path) + end + it 'returns JSON' do + delete :destroy, {:id => @channel.id, :key => @user.api_key, :format => 'json'} + Channel.find_by_id(@channel.id).should be_nil + JSON.parse(response.body)['name'].should eq(@channel.name) + end + it 'returns XML' do + delete :destroy, {:id => @channel.id, :key => @user.api_key, :format => 'xml'} + Channel.find_by_id(@channel.id).should be_nil + Nokogiri::XML(response.body).css('name').text.should eq(@channel.name) + end + end + + end + end diff --git a/spec/controllers/feed_controller_spec.rb b/spec/controllers/feed_controller_spec.rb index 5aa9b4f..0379b35 100644 --- a/spec/controllers/feed_controller_spec.rb +++ b/spec/controllers/feed_controller_spec.rb @@ -6,7 +6,6 @@ describe FeedController do @channel = FactoryGirl.create(:channel) now = Time.utc(2013,1,1) @feed1 = FactoryGirl.create(:feed, :field1 => 10, :channel => @channel, :created_at => now, :entry_id => 1) - @feed = FactoryGirl.create(:feed, :field1 => 10, :channel => @channel, :created_at => now, :entry_id => 2) @feed = FactoryGirl.create(:feed, :field1 => 9, :channel => @channel, :created_at => now, :entry_id => 3) @feed = FactoryGirl.create(:feed, :field1 => 7, :channel => @channel, :created_at => now, :entry_id => 4) @@ -59,6 +58,5 @@ describe FeedController do jsonResponse["field1"].should eq("51.0") end - end From 4a9941e734a56bf5aa0d14a411906277e9f4aba0 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Wed, 26 Mar 2014 13:16:09 -0400 Subject: [PATCH 08/17] fix status response with blank format --- app/controllers/feed_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/feed_controller.rb b/app/controllers/feed_controller.rb index 669e01d..f85a3b3 100644 --- a/app/controllers/feed_controller.rb +++ b/app/controllers/feed_controller.rb @@ -194,7 +194,7 @@ class FeedController < ApplicationController output = @feed.to_xml elsif params[:format] == 'csv' @csv_headers = Feed.select_options(@channel, params) - elsif (params[:format] == 'txt' || params[:format] == 'text' || params[:format] == 'html') + elsif (params[:format] == 'txt' || params[:format] == 'text' || params[:format] == 'html' || params[:format].blank?) output = add_prepend_append(@feed["field#{params[:field_id]}"]) else output = @feed.to_json From 374d2faa99a564831740da716805b91019d3aede Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Wed, 26 Mar 2014 21:17:19 -0400 Subject: [PATCH 09/17] fix channels clear url --- app/views/channels/_edit.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/channels/_edit.html.erb b/app/views/channels/_edit.html.erb index 8851480..4eb97fb 100644 --- a/app/views/channels/_edit.html.erb +++ b/app/views/channels/_edit.html.erb @@ -107,7 +107,7 @@

    <%= t(:channel_clear_message) %>

    - <%= button_to t(:channel_clear), { :controller => 'channels', :action => 'clear', :id => @channel.id }, :data => { :confirm => t(:confirm_channel_clear) } %> + <%= button_to t(:channel_clear), "/channels/#{@channel.id}/clear", :data => { :confirm => t(:confirm_channel_clear) } %>

    From afdfca9fab7a13b5205a90778365bf9a374f7613 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Wed, 26 Mar 2014 23:42:42 -0400 Subject: [PATCH 10/17] fix feeds tests --- spec/controllers/feed_controller_spec.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spec/controllers/feed_controller_spec.rb b/spec/controllers/feed_controller_spec.rb index 0379b35..4f160ac 100644 --- a/spec/controllers/feed_controller_spec.rb +++ b/spec/controllers/feed_controller_spec.rb @@ -23,14 +23,14 @@ describe FeedController do end - it "should get feeds" do - get :show, {id: @feed1.id, channel_id: @channel.id} + it "should get first feed" do + get :show, {id: @feed1.id, channel_id: @channel.id, format: 'json'} response.should be_successful response.body.should eq("{\"created_at\":\"2013-01-01T00:00:00+00:00\",\"entry_id\":1}" ) end it "should get last feed" do - get :show, {id: 'last', channel_id: @channel.id} + get :show, {id: 'last', channel_id: @channel.id, format: 'json'} response.should be_successful response.body.should eq("{\"created_at\":\"2013-01-01T00:00:00+00:00\",\"entry_id\":7}" ) end From 6d48aaa8fc5be13987db863ae49a963143404ac6 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Thu, 27 Mar 2014 15:15:54 -0400 Subject: [PATCH 11/17] allow tags to be added when creating a channel --- app/controllers/channels_controller.rb | 1 + app/models/channel.rb | 3 ++- app/views/docs/channels/_create.html.erb | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/controllers/channels_controller.rb b/app/controllers/channels_controller.rb index 6af1197..d66607c 100644 --- a/app/controllers/channels_controller.rb +++ b/app/controllers/channels_controller.rb @@ -202,6 +202,7 @@ class ChannelsController < ApplicationController channel.set_windows channel.save + channel.save_tags(params[:channel][:tags]) if params[:channel][:tags].present? channel.add_write_api_key @channel_id = channel.id respond_to do |format| diff --git a/app/models/channel.rb b/app/models/channel.rb index 12728de..e3c7fb5 100644 --- a/app/models/channel.rb +++ b/app/models/channel.rb @@ -54,10 +54,11 @@ class Channel < ActiveRecord::Base has_many :feeds has_many :daily_feeds has_many :api_keys, :dependent => :destroy - has_many :taggings + has_many :taggings, :dependent => :destroy has_many :tags, :through => :taggings has_many :comments, :dependent => :destroy has_many :windows, :dependent => :destroy, :autosave => true + accepts_nested_attributes_for :tags self.include_root_in_json = true diff --git a/app/views/docs/channels/_create.html.erb b/app/views/docs/channels/_create.html.erb index 8559611..e98fb82 100644 --- a/app/views/docs/channels/_create.html.erb +++ b/app/views/docs/channels/_create.html.erb @@ -24,6 +24,7 @@ Valid parameters:
  • longitude (decimal) - Longitude in degrees (optional)
  • name (string) - Name of the Channel (optional)
  • public_flag (true/false) - Whether the Channel should be public, default false (optional)
  • +
  • tags (string) - Comma-separated list of tags (optional)
  • url (string) - Webpage URL for the Channel (optional)
  • From 6e5883bb8011ceaf788c013329c8b00b68c199c8 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Mon, 31 Mar 2014 14:16:20 -0400 Subject: [PATCH 12/17] return API key when creating a channel via API --- app/controllers/channels_controller.rb | 4 ++-- app/models/channel.rb | 13 +++++++++++++ app/views/docs/channels/_create.html.erb | 12 +++++++++++- app/views/docs/channels/_update.html.erb | 3 ++- 4 files changed, 28 insertions(+), 4 deletions(-) diff --git a/app/controllers/channels_controller.rb b/app/controllers/channels_controller.rb index d66607c..97a60cd 100644 --- a/app/controllers/channels_controller.rb +++ b/app/controllers/channels_controller.rb @@ -206,8 +206,8 @@ class ChannelsController < ApplicationController channel.add_write_api_key @channel_id = channel.id respond_to do |format| - format.json { render :json => channel.to_json(Channel.public_options) } - format.xml { render :xml => channel.to_xml(Channel.public_options) } + format.json { render :json => channel.to_json(Channel.private_options) } + format.xml { render :xml => channel.to_xml(Channel.private_options) } format.any { redirect_to channel_path(@channel_id, :anchor => "channelsettings") } end end diff --git a/app/models/channel.rb b/app/models/channel.rb index e3c7fb5..25cc02c 100644 --- a/app/models/channel.rb +++ b/app/models/channel.rb @@ -172,6 +172,19 @@ class Channel < ActiveRecord::Base } end + # used when creating a channel + def self.private_options + { + :root => false, + :only => [:id, :name, :description, :latitude, :longitude, :last_entry_id, :elevation, :created_at, :ranking], + :methods => :username, + :include => { + :tags => {:only => [:id, :name]}, + :api_keys => {:only => [:api_key, :write_flag]} + } + } + end + # login name of the user who created the channel def username; self.user.try(:login); end diff --git a/app/views/docs/channels/_create.html.erb b/app/views/docs/channels/_create.html.erb index e98fb82..010b13b 100644 --- a/app/views/docs/channels/_create.html.erb +++ b/app/views/docs/channels/_create.html.erb @@ -58,7 +58,11 @@ POST <%= @ssl_api_domain %>channels @@ -81,6 +85,12 @@ POST <%= @ssl_api_domain %>channels15</ranking> <username>hans</username> <tags type="array" /> + <api-keys type="array"> + <api-key> + <api-key>XXXXXXXXXXXXXXXX</api-key> + <write-flag type="boolean">true</write-flag> + </api-key> + </api-keys> </channel>
    diff --git a/app/views/docs/channels/_update.html.erb b/app/views/docs/channels/_update.html.erb index 4a2e8c1..3755bba 100644 --- a/app/views/docs/channels/_update.html.erb +++ b/app/views/docs/channels/_update.html.erb @@ -4,7 +4,8 @@

    -To update a Channel feed, send an HTTP GET or POST to <%= @ssl_api_domain %>update.json.xml . +To update a Channel feed, send an HTTP GET or POST to
    +<%= @ssl_api_domain %>update.json.xml .

    Valid parameters: From 2ce67bde9114e2b64d900116f8de718e93e38962 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Mon, 31 Mar 2014 14:20:46 -0400 Subject: [PATCH 13/17] docs formatting fix --- app/views/docs/channels/_create.html.erb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/views/docs/channels/_create.html.erb b/app/views/docs/channels/_create.html.erb index 010b13b..932e302 100644 --- a/app/views/docs/channels/_create.html.erb +++ b/app/views/docs/channels/_create.html.erb @@ -59,10 +59,13 @@ POST <%= @ssl_api_domain %>channels From 5f4bee0d52a1ba213ddbe7975ef59a9da581be17 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Mon, 31 Mar 2014 19:07:20 -0400 Subject: [PATCH 14/17] remove constant that is no longer used --- config/initializers/constants.rb | 3 --- 1 file changed, 3 deletions(-) diff --git a/config/initializers/constants.rb b/config/initializers/constants.rb index 89ed836..f6b070f 100644 --- a/config/initializers/constants.rb +++ b/config/initializers/constants.rb @@ -14,9 +14,6 @@ APPLICATION_IP_ADDRESS = '127.0.0.1' # domain for the API API_DOMAIN = 'http://127.0.0.1:3000/' -# admin email addresses -ADMIN_EMAILS = [] - # get api key from HTTP headers if this value is present HTTP_HEADER_API_KEY_NAME = 'THINGSPEAKAPIKEY' From 095daf5abed01092fc8c2fa4438a7a5d6e15070b Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Mon, 31 Mar 2014 19:10:15 -0400 Subject: [PATCH 15/17] remove unused spec helpers --- spec/helpers/api_keys_helper_spec.rb | 15 --------------- spec/helpers/charts_helper_spec.rb | 15 --------------- spec/helpers/mailer_helper_spec.rb | 15 --------------- spec/helpers/status_helper_spec.rb | 15 --------------- spec/helpers/subdomains_helper_spec.rb | 15 --------------- 5 files changed, 75 deletions(-) delete mode 100644 spec/helpers/api_keys_helper_spec.rb delete mode 100644 spec/helpers/charts_helper_spec.rb delete mode 100644 spec/helpers/mailer_helper_spec.rb delete mode 100644 spec/helpers/status_helper_spec.rb delete mode 100644 spec/helpers/subdomains_helper_spec.rb diff --git a/spec/helpers/api_keys_helper_spec.rb b/spec/helpers/api_keys_helper_spec.rb deleted file mode 100644 index cdf8344..0000000 --- a/spec/helpers/api_keys_helper_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -require 'spec_helper' - -# Specs in this file have access to a helper object that includes -# the ApiKeysHelper. For example: -# -# describe ApiKeysHelper do -# describe "string concat" do -# it "concats two strings with spaces" do -# helper.concat_strings("this","that").should == "this that" -# end -# end -# end -describe ApiKeysHelper do - pending "add some examples to (or delete) #{__FILE__}" -end diff --git a/spec/helpers/charts_helper_spec.rb b/spec/helpers/charts_helper_spec.rb deleted file mode 100644 index 1eeae9f..0000000 --- a/spec/helpers/charts_helper_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -require 'spec_helper' - -# Specs in this file have access to a helper object that includes -# the ChartsHelper. For example: -# -# describe ChartsHelper do -# describe "string concat" do -# it "concats two strings with spaces" do -# helper.concat_strings("this","that").should == "this that" -# end -# end -# end -describe ChartsHelper do - pending "add some examples to (or delete) #{__FILE__}" -end diff --git a/spec/helpers/mailer_helper_spec.rb b/spec/helpers/mailer_helper_spec.rb deleted file mode 100644 index 212c5c1..0000000 --- a/spec/helpers/mailer_helper_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -require 'spec_helper' - -# Specs in this file have access to a helper object that includes -# the MailerHelper. For example: -# -# describe MailerHelper do -# describe "string concat" do -# it "concats two strings with spaces" do -# helper.concat_strings("this","that").should == "this that" -# end -# end -# end -describe MailerHelper do - pending "add some examples to (or delete) #{__FILE__}" -end diff --git a/spec/helpers/status_helper_spec.rb b/spec/helpers/status_helper_spec.rb deleted file mode 100644 index 1b40565..0000000 --- a/spec/helpers/status_helper_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -require 'spec_helper' - -# Specs in this file have access to a helper object that includes -# the StatusHelper. For example: -# -# describe StatusHelper do -# describe "string concat" do -# it "concats two strings with spaces" do -# helper.concat_strings("this","that").should == "this that" -# end -# end -# end -describe StatusHelper do - pending "add some examples to (or delete) #{__FILE__}" -end diff --git a/spec/helpers/subdomains_helper_spec.rb b/spec/helpers/subdomains_helper_spec.rb deleted file mode 100644 index 7283e29..0000000 --- a/spec/helpers/subdomains_helper_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -require 'spec_helper' - -# Specs in this file have access to a helper object that includes -# the SubdomainsHelper. For example: -# -# describe SubdomainsHelper do -# describe "string concat" do -# it "concats two strings with spaces" do -# helper.concat_strings("this","that").should == "this that" -# end -# end -# end -describe SubdomainsHelper do - pending "add some examples to (or delete) #{__FILE__}" -end From 47ba7a6fa5033aa1c405656240a6adeba549c894 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Mon, 31 Mar 2014 23:48:14 -0400 Subject: [PATCH 16/17] check whether redis is enabled before clearing channel --- app/models/channel.rb | 5 +++-- config/initializers/constants.rb | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/models/channel.rb b/app/models/channel.rb index 25cc02c..c191d6f 100644 --- a/app/models/channel.rb +++ b/app/models/channel.rb @@ -347,14 +347,15 @@ class Channel < ActiveRecord::Base end def delete_feeds - if self.feeds.count < 1000 + # if a small number of feeds or redis is not present + if self.feeds.count < 1000 || REDIS_ENABLED == false Feed.delete_all(["channel_id = ?", self.id]) DailyFeed.delete_all(["channel_id = ?", self.id]) begin self.update_attribute(:last_entry_id, nil) rescue Exception => e end - + # else delete via background resque job else self.update_attribute(:clearing, true) Resque.enqueue(ClearChannelJob, self.id) diff --git a/config/initializers/constants.rb b/config/initializers/constants.rb index f6b070f..1dac088 100644 --- a/config/initializers/constants.rb +++ b/config/initializers/constants.rb @@ -17,6 +17,9 @@ API_DOMAIN = 'http://127.0.0.1:3000/' # get api key from HTTP headers if this value is present HTTP_HEADER_API_KEY_NAME = 'THINGSPEAKAPIKEY' +# whether to use Redis or not +REDIS_ENABLED = false + # Twitter api credentials CONSUMER_KEY = '' CONSUMER_SECRET = '' From 353fab53c0cfb67f78bd5415c608e0fdb3b6f7f5 Mon Sep 17 00:00:00 2001 From: Lee Lawlor Date: Tue, 1 Apr 2014 23:20:12 -0400 Subject: [PATCH 17/17] allow streaming downloads to export channel feed data --- Gemfile | 2 +- Gemfile.lock | 8 +-- app/controllers/stream_controller.rb | 83 ++++++++++++++++++++++++ app/views/channels/_import.html.erb | 7 ++ app/views/docs/channels/_update.html.erb | 2 +- config/locales/en.yml | 7 +- config/locales/it.yml | 4 +- config/locales/pt-br.yml | 4 +- config/routes.rb | 3 + 9 files changed, 107 insertions(+), 13 deletions(-) create mode 100644 app/controllers/stream_controller.rb diff --git a/Gemfile b/Gemfile index a9906f3..4e8f058 100644 --- a/Gemfile +++ b/Gemfile @@ -42,7 +42,7 @@ gem 'uglifier' group :development do gem 'annotate', '~> 2.6.1' gem 'quiet_assets' - gem 'thin' + gem 'puma' gem 'i18n-tasks', '~> 0.2.10' end diff --git a/Gemfile.lock b/Gemfile.lock index 51e2ef2..f473234 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -203,6 +203,8 @@ GEM polyamorous (0.6.4) activerecord (>= 3.0) polyglot (0.3.4) + puma (2.8.1) + rack (>= 1.1, < 2.0) quiet_assets (1.0.2) railties (>= 3.1, < 5.0) rack (1.5.2) @@ -297,10 +299,6 @@ GEM therubyracer (0.12.0) libv8 (~> 3.16.14.0) ref - thin (1.6.1) - daemons (>= 1.0.9) - eventmachine (>= 1.0.0) - rack (>= 1.0.0) thor (0.18.1) thread (0.1.3) thread_safe (0.1.3) @@ -366,6 +364,7 @@ DEPENDENCIES nested_form newrelic_rpm nokogiri + puma quiet_assets rack-utf8_sanitizer rails (= 4.0.3) @@ -379,7 +378,6 @@ DEPENDENCIES spork sqlite3-ruby (= 1.3.3) therubyracer - thin tweetstream twitter_oauth! uglifier diff --git a/app/controllers/stream_controller.rb b/app/controllers/stream_controller.rb new file mode 100644 index 0000000..6c19999 --- /dev/null +++ b/app/controllers/stream_controller.rb @@ -0,0 +1,83 @@ +class StreamController < ApplicationController + include ActionController::Live + require 'csv' + + def channel_feed + channel = Channel.find(params[:id]) + api_key = ApiKey.find_by_api_key(get_apikey) + + # set timezone correctly + set_time_zone(params) + + # output proper http response if error + render :text => '-1', :status => 400 and return if !channel_permission?(channel, api_key) + + # set the attachment headers + response.headers['Content-Type'] = 'text/csv' + response.headers['Content-Disposition'] = 'attachment; filename=feeds.csv' + + # get the feed headers + csv_headers = Feed.select_options(channel, params) + + # set the total records and batch size + total_records = channel.feeds.count + batch = 1000 + + # write the headers row + response.stream.write "#{CSV.generate_line(csv_headers)}" + + # for every 1000 records + (0..(total_records - batch).abs).step(batch) do |i| + # variable to hold the streaming output for this batch + batch_output = "" + # feeds query + feeds = Feed.where(:channel_id => channel.id).order('entry_id asc').offset(i).limit(batch) + + # for each feed, add the data according to the csv_headers + feeds.each do |feed| + row = [] + csv_headers.each { |attr| row.push(feed.send(attr)) } + batch_output += CSV.generate_line(row) + end + + # write the output for this batch + response.stream.write batch_output + # add a slight delay between database queries + sleep 0.1 + end + ensure + response.stream.close + end + + def stream_example + # get the channel + channel = Channel.find(params[:channel_id]) + + # stream the response + response.headers['Content-Type'] = 'text/csv' + response.headers['Content-Disposition'] = 'attachment; filename=feeds.csv' + 20.times { + response.stream.write "hello world\n" + sleep 1 + } + ensure + response.stream.close + end + + def stream_chunked_example + #response.headers['Content-Type'] = 'text/event-stream' + response.headers['Content-Type'] = 'text/csv' + response.headers['Content-Disposition'] = 'attachment; filename=feeds.csv' + response.headers['Transfer-Encoding'] = 'chunked' + 10.times { + response.stream.write "4\n" # size must be in hex format? + response.stream.write "hel\n\n" + sleep 1 + } + response.stream.write "0\n\n" + ensure + response.stream.close + end + +end + diff --git a/app/views/channels/_import.html.erb b/app/views/channels/_import.html.erb index bc950e4..e90567f 100644 --- a/app/views/channels/_import.html.erb +++ b/app/views/channels/_import.html.erb @@ -1,4 +1,5 @@
    +

    <%= t(:import) %>

    <%= t(:upload_select) %>
    @@ -11,6 +12,12 @@ <%= f.submit t(:upload), :disable_with => t(:uploading) %> <% end %> +

    + +

    <%= t(:export) %>

    + <%= t(:download_feeds) %> +

    + <%= button_to t(:download), "#{@ssl_api_domain}stream/channels/#{@channel.id}/feeds?api_key=#{@channel.write_api_key}" %>