genevalidatorapp 2.1.4 → 2.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9f72c23d43949d5ffd9efd3fa0fdfa1a8082929c08b75147b9ae03b211417761
4
- data.tar.gz: 318424d4096fb24963807fc71a7f465b2dabfcda72ce799f08380d83cd5531ea
3
+ metadata.gz: 23675e94206552e58ec327495cf8db3ddec22cc3cebddc8a744b4b0dcf1fadad
4
+ data.tar.gz: bbda81a62f2b0649cb5485e3d1bfc48b5e110c0396e52b463600c00301f29fee
5
5
  SHA512:
6
- metadata.gz: ee55c4bfc848002e7c5a7725e24ee84fb18cfc89c41c06efbd965521121f75725f1d2d5cb25c70bd365a47afb7d43be3948c9e4f01cb80eb04cafe1942dc2814
7
- data.tar.gz: 8e9434070a513f61ea5ab5f9e0fce1f0594f97261ded3debd746dfe69276cab5b4d7e80076c855326aeb6e478196ff66f1959c0f0315ecfc1b2e097661fdb704
6
+ metadata.gz: 4f7da4f6bec13dc0903e45d385f504a1d81bb3a43e6d41265b8b7762a7e5ffbe3b831ffdef7d868e95c5cbf6a92ad8097979cf57b6856ac7bd812385267af2b9
7
+ data.tar.gz: f0810572583283e4755b0affe34d65d558e2aca9758d03857917a784a3efe048a50d884c5b8e57e88bbad0aee58a93154c8d2abc1be1fc130d8eb588c21ee898
data/.gitignore CHANGED
@@ -21,4 +21,5 @@ tmp
21
21
  *.o
22
22
  *.a
23
23
  mkmf.log
24
- .DS_Store
24
+ .DS_Store
25
+ passenger*
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- # Specify your gem's dependencies in GeneValidatorApp.gemspec
4
3
  gemspec
4
+
5
+ gem 'passenger', '~>5.3.4'
6
+ gem 'genevalidator', '2.1.5'
data/Rakefile CHANGED
@@ -22,3 +22,28 @@ task :test do
22
22
  t.warning = false
23
23
  end
24
24
  end
25
+
26
+ desc 'Build Assets'
27
+ task :assets do
28
+ # Requires uglifycss and uglifyjs
29
+ # npm install uglifycss -g
30
+ # npm install uglify-js -g
31
+ src_assets_dir = File.expand_path('public/src', __dir__)
32
+ assets_dir = File.expand_path('public/web_files', __dir__)
33
+ `rm #{assets_dir}/css/gv.compiled.min.css`
34
+ `rm #{assets_dir}/js/gv.compiled.min.js`
35
+ sh "uglifycss --output '#{assets_dir}/css/gv.compiled.min.css'" \
36
+ " '#{src_assets_dir}/css/bootstrap1.min.css'" \
37
+ " '#{src_assets_dir}/css/font-awesome.min.css'" \
38
+ " '#{src_assets_dir}/css/custom.css'"
39
+
40
+ sh "uglifyjs '#{src_assets_dir}/js/jquery.min.js'" \
41
+ " '#{src_assets_dir}/js/bootstrap.min.js'" \
42
+ " '#{src_assets_dir}/js/jquery.tablesorter.min.js'" \
43
+ " '#{src_assets_dir}/js/jquery.validate.min.js'" \
44
+ " '#{src_assets_dir}/js/jquery.cookie.min.js'" \
45
+ " '#{src_assets_dir}/js/d3.v3.min.js'" \
46
+ " '#{src_assets_dir}/js/plots.js'" \
47
+ " '#{src_assets_dir}/js/genevalidator.js'" \
48
+ " -m -c -o '#{assets_dir}/js/gv.compiled.min.js'"
49
+ end
@@ -118,6 +118,7 @@ module GeneValidatorApp
118
118
  end
119
119
 
120
120
  def init_database
121
+ set_database_from_env unless config[:database_dir]
121
122
  raise DATABASE_DIR_NOT_SET unless config[:database_dir]
122
123
 
123
124
  config[:database_dir] = File.expand_path(config[:database_dir])
@@ -136,6 +137,11 @@ module GeneValidatorApp
136
137
  end
137
138
  end
138
139
 
140
+ # attempt to set the database dir to GV_BLAST_DB_DIR if it exists
141
+ def set_database_from_env
142
+ config[:database_dir] = ENV['GV_BLAST_DB_DIR']
143
+ end
144
+
139
145
  def load_extension
140
146
  return unless config[:require]
141
147
  config[:require] = File.expand_path config[:require]
@@ -1,3 +1,3 @@
1
1
  module GeneValidatorApp
2
- VERSION = '2.1.4'.freeze
2
+ VERSION = '2.1.5'.freeze
3
3
  end
@@ -98,19 +98,19 @@ h1 .small {
98
98
  display: block;
99
99
  margin-left: auto;
100
100
  margin-right: auto;
101
- margin-top: 5px;
101
+ margin-top: 20px;
102
102
  }
103
103
 
104
104
  #input_btn {
105
105
  display: block;
106
106
  margin-left: auto;
107
107
  margin-right: auto;
108
- margin-top: 20px;
109
108
  }
110
109
 
111
110
  .show_examples_text {
112
111
  font-size: 17px;
113
112
  text-align: center;
113
+ margin-top: 10px;
114
114
  }
115
115
 
116
116
  .control-label{
@@ -478,12 +478,11 @@ ___________________________*/
478
478
  @media (min-width: 768px) {
479
479
  #adv_params_btn {
480
480
  float:left !important;
481
- margin-top: 5px;
481
+ margin-top:0;
482
482
  }
483
483
 
484
484
  #input_btn {
485
485
  float:right !important;
486
- margin-top: -43px;
487
486
  }
488
487
 
489
488
  .show_examples_text {
@@ -0,0 +1,10 @@
1
+ @import url("//fonts.googleapis.com/css?family=Lato:400,700,400italic");/*!
2
+ * bootswatch v3.3.1+2
3
+ * Homepage: http://bootswatch.com
4
+ * Copyright 2012-2014 Thomas Park
5
+ * Licensed under MIT
6
+ * Based on Bootstrap
7
+ *//*! normalize.css v3.0.2 | 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,menu,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-color: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:.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;-webkit-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"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;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 silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;-webkit-box-shadow:none !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]: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}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}@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,.glyphicon-eur: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"}*{-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:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:1.42857143;color:#2c3e50;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#18bc9c;text-decoration:none}a:hover,a:focus{color:#18bc9c;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,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ecf0f1;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-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:21px;margin-bottom:21px;border:0;border-top:1px solid #ecf0f1}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;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:#b4bcc2}h1,.h1,h2,.h2,h3,.h3{margin-top:21px;margin-bottom:10.5px}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:10.5px;margin-bottom:10.5px}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:39px}h2,.h2{font-size:32px}h3,.h3{font-size:26px}h4,.h4{font-size:19px}h5,.h5{font-size:15px}h6,.h6{font-size:13px}p{margin:0 0 10.5px}.lead{margin-bottom:21px;font-size:17px;font-weight:300;line-height:1.4}@media(min-width:768px){.lead{font-size:22.5px}}small,.small{font-size:86%}mark,.mark{background-color:#f39c12;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#b4bcc2}.text-primary{color:#2c3e50}a.text-primary:hover{color:#1a242f}.text-success{color:#fff}a.text-success:hover{color:#e6e6e6}.text-info{color:#fff}a.text-info:hover{color:#e6e6e6}.text-warning{color:#fff}a.text-warning:hover{color:#e6e6e6}.text-danger{color:#fff}a.text-danger:hover{color:#e6e6e6}.bg-primary{color:#fff;background-color:#2c3e50}a.bg-primary:hover{background-color:#1a242f}.bg-success{background-color:#18bc9c}a.bg-success:hover{background-color:#128f76}.bg-info{background-color:#3498db}a.bg-info:hover{background-color:#217dbb}.bg-warning{background-color:#f39c12}a.bg-warning:hover{background-color:#c87f0a}.bg-danger{background-color:#e74c3c}a.bg-danger:hover{background-color:#d62c1a}.page-header{padding-bottom:9.5px;margin:42px 0 21px;border-bottom:1px solid transparent}ul,ol{margin-top:0;margin-bottom:10.5px}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;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:21px}dt,dd{line-height:1.42857143}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.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 #b4bcc2}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10.5px 21px;margin:0 0 21px;font-size:18.75px;border-left:5px solid #ecf0f1}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.42857143;color:#b4bcc2}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 #ecf0f1;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'}address{margin-bottom:21px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:10px;margin:0 0 10.5px;font-size:14px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#7b8a8b;background-color:#ecf0f1;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.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.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.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.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.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.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.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#b4bcc2;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:21px}.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.42857143;vertical-align:top;border-top:1px solid #ecf0f1}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ecf0f1}.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 #ecf0f1}.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 #ecf0f1}.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 #ecf0f1}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#ecf0f1}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:#ecf0f1}.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:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#dde4e6}.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:#18bc9c}.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:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#15a589}.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:#3498db}.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:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#258cd1}.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:#f39c12}.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:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#e08e0b}.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:#e74c3c}.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:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#e43725}.table-responsive{overflow-x:auto;min-height:.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15.75px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ecf0f1}.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:21px;font-size:22.5px;line-height:inherit;color:#2c3e50;border:0;border-bottom:1px solid transparent}label{display:inline-block;max-width:100%;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:11px;font-size:15px;line-height:1.42857143;color:#2c3e50}.form-control{display:block;width:100%;height:43px;padding:10px 15px;font-size:15px;line-height:1.42857143;color:#2c3e50;background-color:#fff;background-image:none;border:1px solid #dce4ec;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,-webkit-box-shadow ease-in-out .15s;-o-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:#2c3e50;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(44,62,80,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(44,62,80,0.6)}.form-control::-moz-placeholder{color:#acb6c0;opacity:1}.form-control:-ms-input-placeholder{color:#acb6c0}.form-control::-webkit-input-placeholder{color:#acb6c0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#ecf0f1;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:43px}input[type="date"].input-sm,input[type="time"].input-sm,input[type="datetime-local"].input-sm,input[type="month"].input-sm{line-height:33px}input[type="date"].input-lg,input[type="time"].input-lg,input[type="datetime-local"].input-lg,input[type="month"].input-lg{line-height:64px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:21px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.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],input[type="radio"].disabled,input[type="checkbox"].disabled,fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:11px;padding-bottom:11px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.input-sm,.form-group-sm .form-control{height:33px;padding:6px 9px;font-size:13px;line-height:1.5;border-radius:3px}select.input-sm,select.form-group-sm .form-control{height:33px;line-height:33px}textarea.input-sm,textarea.form-group-sm .form-control,select[multiple].input-sm,select[multiple].form-group-sm .form-control{height:auto}.input-lg,.form-group-lg .form-control{height:64px;padding:18px 27px;font-size:19px;line-height:1.33;border-radius:6px}select.input-lg,select.form-group-lg .form-control{height:64px;line-height:64px}textarea.input-lg,textarea.form-group-lg .form-control,select[multiple].input-lg,select[multiple].form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:53.75px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:43px;height:43px;line-height:43px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback{width:64px;height:64px;line-height:64px}.input-sm+.form-control-feedback{width:33px;height:33px;line-height:33px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#fff}.has-success .form-control{border-color:#fff;-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:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-success .input-group-addon{color:#fff;border-color:#fff;background-color:#18bc9c}.has-success .form-control-feedback{color:#fff}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#fff}.has-warning .form-control{border-color:#fff;-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:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-warning .input-group-addon{color:#fff;border-color:#fff;background-color:#f39c12}.has-warning .form-control-feedback{color:#fff}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#fff}.has-error .form-control{border-color:#fff;-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:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-error .input-group-addon{color:#fff;border-color:#fff;background-color:#e74c3c}.has-error .form-control-feedback{color:#fff}.has-feedback label~.form-control-feedback{top:26px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#597ea2}@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 .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.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;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:11px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:32px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media(min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:11px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media(min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:24.94px}}@media(min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:7px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:10px 15px;font-size:15px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#fff;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:#fff;background-color:#95a5a6;border-color:#95a5a6}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#fff;background-color:#798d8f;border-color:#74898a}.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.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:#95a5a6;border-color:#95a5a6}.btn-default .badge{color:#95a5a6;background-color:#fff}.btn-primary{color:#fff;background-color:#2c3e50;border-color:#2c3e50}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#1a242f;border-color:#161f29}.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.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:#2c3e50;border-color:#2c3e50}.btn-primary .badge{color:#2c3e50;background-color:#fff}.btn-success{color:#fff;background-color:#18bc9c;border-color:#18bc9c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#128f76;border-color:#11866f}.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.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:#18bc9c;border-color:#18bc9c}.btn-success .badge{color:#18bc9c;background-color:#fff}.btn-info{color:#fff;background-color:#3498db;border-color:#3498db}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#217dbb;border-color:#2077b2}.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.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:#3498db;border-color:#3498db}.btn-info .badge{color:#3498db;background-color:#fff}.btn-warning{color:#fff;background-color:#f39c12;border-color:#f39c12}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#c87f0a;border-color:#be780a}.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.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:#f39c12;border-color:#f39c12}.btn-warning .badge{color:#f39c12;background-color:#fff}.btn-danger{color:#fff;background-color:#e74c3c;border-color:#e74c3c}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#d62c1a;border-color:#cd2a19}.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.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:#e74c3c;border-color:#e74c3c}.btn-danger .badge{color:#e74c3c;background-color:#fff}.btn-link{color:#18bc9c;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.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:#18bc9c;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:#b4bcc2;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:18px 27px;font-size:19px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:6px 9px;font-size:13px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:13px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.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;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.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:15px;text-align:left;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);-webkit-background-clip:padding-box;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9.5px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#7b8a8b;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#fff;background-color:#2c3e50}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#2c3e50}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#b4bcc2}.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:13px;line-height:1.42857143;color:#b4bcc2;white-space:nowrap}.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:768px){.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+.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>.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%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0,0,0,0);pointer-events: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{position:relative;z-index:2;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:64px;padding:18px 27px;font-size:19px;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:64px;line-height:64px}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:33px;padding:6px 9px;font-size:13px;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:33px;line-height:33px}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:10px 15px;font-size:15px;font-weight:normal;line-height:1;color:#2c3e50;text-align:center;background-color:#ecf0f1;border:1px solid #dce4ec;border-radius:4px}.input-group-addon.input-sm{padding:6px 9px;font-size:13px;border-radius:3px}.input-group-addon.input-lg{padding:18px 27px;font-size:19px;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:#ecf0f1}.nav>li.disabled>a{color:#b4bcc2}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#b4bcc2;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#ecf0f1;border-color:#18bc9c}.nav .nav-divider{height:1px;margin:9.5px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ecf0f1}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#ecf0f1 #ecf0f1 #ecf0f1}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#2c3e50;background-color:#fff;border:1px solid #ecf0f1;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 #ecf0f1}@media(min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ecf0f1;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:#2c3e50}.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 #ecf0f1}@media(min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ecf0f1;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;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:60px;margin-bottom:21px;border:1px solid transparent}@media(min-width:768px){.navbar{border-radius:4px}}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);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:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block !important;visibility:visible !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}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media(max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.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:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media(min-width:768px){.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:19.5px 15px;font-size:19px;line-height:21px;height:60px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media(min-width:768px){.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:13px;margin-bottom:13px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.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:768px){.navbar-toggle{display:none}}.navbar-nav{margin:9.75px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:21px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;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:21px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:19.5px;padding-bottom:19.5px}}.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:8.5px;margin-bottom:8.5px}@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 .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.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;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media(min-width:768px){.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-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-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8.5px;margin-bottom:8.5px}.navbar-btn.btn-sm{margin-top:13.5px;margin-bottom:13.5px}.navbar-btn.btn-xs{margin-top:19px;margin-bottom:19px}.navbar-text{margin-top:19.5px;margin-bottom:19.5px}@media(min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media(min-width:768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#2c3e50;border-color:transparent}.navbar-default .navbar-brand{color:#fff}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#18bc9c;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#fff}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#18bc9c;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#fff;background-color:#1a242f}.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:#1a242f}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#1a242f}.navbar-default .navbar-toggle .icon-bar{background-color:#fff}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:transparent}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#1a242f;color:#fff}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#fff}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#18bc9c;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:#fff;background-color:#1a242f}.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:#fff}.navbar-default .navbar-link:hover{color:#18bc9c}.navbar-default .btn-link{color:#fff}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#18bc9c}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#18bc9c;border-color:transparent}.navbar-inverse .navbar-brand{color:#fff}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#2c3e50;background-color:transparent}.navbar-inverse .navbar-text{color:#fff}.navbar-inverse .navbar-nav>li>a{color:#fff}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#2c3e50;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:#15a589}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#128f76}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#128f76}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#149c82}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#15a589;color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#fff}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#2c3e50;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:#15a589}.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:#ccc;background-color:transparent}}.navbar-inverse .navbar-link{color:#fff}.navbar-inverse .navbar-link:hover{color:#2c3e50}.navbar-inverse .btn-link{color:#fff}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#2c3e50}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#ccc}.breadcrumb{padding:8px 15px;margin-bottom:21px;list-style:none;background-color:#ecf0f1;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#95a5a6}.pagination{display:inline-block;padding-left:0;margin:21px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:10px 15px;line-height:1.42857143;text-decoration:none;color:#fff;background-color:#18bc9c;border:1px solid transparent;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:#fff;background-color:#0f7864;border-color:transparent}.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:#0f7864;border-color:transparent;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:#ecf0f1;background-color:#3be6c4;border-color:transparent;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:18px 27px;font-size:19px}.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:6px 9px;font-size:13px}.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:21px 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:#18bc9c;border:1px solid transparent;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#0f7864}.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:#fff;background-color:#18bc9c;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}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#95a5a6}.label-default[href]:hover,.label-default[href]:focus{background-color:#798d8f}.label-primary{background-color:#2c3e50}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#1a242f}.label-success{background-color:#18bc9c}.label-success[href]:hover,.label-success[href]:focus{background-color:#128f76}.label-info{background-color:#3498db}.label-info[href]:hover,.label-info[href]:focus{background-color:#217dbb}.label-warning{background-color:#f39c12}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#c87f0a}.label-danger{background-color:#e74c3c}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#d62c1a}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:13px;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#2c3e50;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}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#2c3e50;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#ecf0f1}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:23px;font-weight:200}.jumbotron>hr{border-top-color:#cfd9db}.container .jumbotron,.container-fluid .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding:48px 0}.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:67.5px}}.thumbnail{display:block;padding:4px;margin-bottom:21px;line-height:1.42857143;background-color:#fff;border:1px solid #ecf0f1;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#18bc9c}.thumbnail .caption{padding:9px;color:#2c3e50}.alert{padding:15px;margin-bottom:21px;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,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#18bc9c;border-color:#18bc9c;color:#fff}.alert-success hr{border-top-color:#15a589}.alert-success .alert-link{color:#e6e6e6}.alert-info{background-color:#3498db;border-color:#3498db;color:#fff}.alert-info hr{border-top-color:#258cd1}.alert-info .alert-link{color:#e6e6e6}.alert-warning{background-color:#f39c12;border-color:#f39c12;color:#fff}.alert-warning hr{border-top-color:#e08e0b}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{background-color:#e74c3c;border-color:#e74c3c;color:#fff}.alert-danger hr{border-top-color:#e43725}.alert-danger .alert-link{color:#e6e6e6}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-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:21px;margin-bottom:21px;background-color:#ecf0f1;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:13px;line-height:21px;color:#fff;text-align:center;background-color:#2c3e50;-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;-o-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar,.progress-bar-striped{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:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#18bc9c}.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:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#3498db}.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:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f39c12}.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:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#e74c3c}.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:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.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 #ecf0f1}.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}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;color:#555;background-color:#ecf0f1}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#ecf0f1;color:#b4bcc2;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#b4bcc2}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#2c3e50;border-color:#2c3e50}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#8aa4be}.list-group-item-success{color:#fff;background-color:#18bc9c}a.list-group-item-success{color:#fff}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#fff;background-color:#15a589}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-info{color:#fff;background-color:#3498db}a.list-group-item-info{color:#fff}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#fff;background-color:#258cd1}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-warning{color:#fff;background-color:#f39c12}a.list-group-item-warning{color:#fff}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#fff;background-color:#e08e0b}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-danger{color:#fff;background-color:#e74c3c}a.list-group-item-danger{color:#fff}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#fff;background-color:#e43725}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:21px;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-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:17px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#ecf0f1;border-top:1px solid #ecf0f1;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.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,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-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,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ecf0f1}.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>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>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{border-bottom:0}.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,.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{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:21px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ecf0f1}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ecf0f1}.panel-default{border-color:#ecf0f1}.panel-default>.panel-heading{color:#2c3e50;background-color:#ecf0f1;border-color:#ecf0f1}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ecf0f1}.panel-default>.panel-heading .badge{color:#ecf0f1;background-color:#2c3e50}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ecf0f1}.panel-primary{border-color:#2c3e50}.panel-primary>.panel-heading{color:#fff;background-color:#2c3e50;border-color:#2c3e50}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#2c3e50}.panel-primary>.panel-heading .badge{color:#2c3e50;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#2c3e50}.panel-success{border-color:#18bc9c}.panel-success>.panel-heading{color:#fff;background-color:#18bc9c;border-color:#18bc9c}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#18bc9c}.panel-success>.panel-heading .badge{color:#18bc9c;background-color:#fff}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#18bc9c}.panel-info{border-color:#3498db}.panel-info>.panel-heading{color:#fff;background-color:#3498db;border-color:#3498db}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#3498db}.panel-info>.panel-heading .badge{color:#3498db;background-color:#fff}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#3498db}.panel-warning{border-color:#f39c12}.panel-warning>.panel-heading{color:#fff;background-color:#f39c12;border-color:#f39c12}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#f39c12}.panel-warning>.panel-heading .badge{color:#f39c12;background-color:#fff}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#f39c12}.panel-danger{border-color:#e74c3c}.panel-danger>.panel-heading{color:#fff;background-color:#e74c3c;border-color:#e74c3c}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#e74c3c}.panel-danger>.panel-heading .badge{color:#e74c3c;background-color:#fff}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#e74c3c}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#ecf0f1;border:1px solid transparent;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:22.5px;font-weight:bold;line-height:1;color:#000;text-shadow:none;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:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.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);-webkit-background-clip:padding-box;background-clip:padding-box;outline:0}.modal-backdrop{position:absolute;top:0;right:0;left:0;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.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{padding: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}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@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}}@media(min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;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:rgba(0,0,0,0.9);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:rgba(0,0,0,0.9)}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:rgba(0,0,0,0.9)}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:rgba(0,0,0,0.9)}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:rgba(0,0,0,0.9)}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:rgba(0,0,0,0.9)}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:rgba(0,0,0,0.9)}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:rgba(0,0,0,0.9)}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:rgba(0,0,0,0.9)}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;font-weight:normal;line-height:1.42857143;text-align:left;background-color:#fff;-webkit-background-clip:padding-box;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:15px;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;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000;perspective:1000}.carousel-inner>.item.next,.carousel-inner>.item.active.right{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.prev,.carousel-inner>.item.active.left{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right,.carousel-inner>.item.active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);left:0}}.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,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));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,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));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:0;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%;margin-left:-10px}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%;margin-right:-10px}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-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 .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd: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,.dl-horizontal dd: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,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{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}}@media(max-width:767px){.visible-xs-block{display:block !important}}@media(max-width:767px){.visible-xs-inline{display:inline !important}}@media(max-width:767px){.visible-xs-inline-block{display:inline-block !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}}@media(min-width:768px) and (max-width:991px){.visible-sm-block{display:block !important}}@media(min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline !important}}@media(min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block !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}}@media(min-width:992px) and (max-width:1199px){.visible-md-block{display:block !important}}@media(min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline !important}}@media(min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block !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(min-width:1200px){.visible-lg-block{display:block !important}}@media(min-width:1200px){.visible-lg-inline{display:inline !important}}@media(min-width:1200px){.visible-lg-inline-block{display:inline-block !important}}@media(max-width:767px){.hidden-xs{display:none !important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none !important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none !important}}@media(min-width:1200px){.hidden-lg{display:none !important}}.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}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}.navbar{border-width:0}.navbar-default .badge{background-color:#fff;color:#2c3e50}.navbar-inverse .badge{background-color:#fff;color:#18bc9c}.navbar-brand{padding:18.5px 15px 20.5px}.btn:active{-webkit-box-shadow:none;box-shadow:none}.btn-group.open .dropdown-toggle{-webkit-box-shadow:none;box-shadow:none}.text-primary,.text-primary:hover{color:#2c3e50}.text-success,.text-success:hover{color:#18bc9c}.text-danger,.text-danger:hover{color:#e74c3c}.text-warning,.text-warning:hover{color:#f39c12}.text-info,.text-info:hover{color:#3498db}table a:not(.btn),.table a:not(.btn){text-decoration:underline}table .dropdown-menu a,.table .dropdown-menu a{text-decoration:none}table .success,.table .success,table .warning,.table .warning,table .danger,.table .danger,table .info,.table .info{color:#fff}table .success a,.table .success a,table .warning a,.table .warning a,table .danger a,.table .danger a,table .info a,.table .info a{color:#fff}table>thead>tr>th,.table>thead>tr>th,table>tbody>tr>th,.table>tbody>tr>th,table>tfoot>tr>th,.table>tfoot>tr>th,table>thead>tr>td,.table>thead>tr>td,table>tbody>tr>td,.table>tbody>tr>td,table>tfoot>tr>td,.table>tfoot>tr>td{border:0}table-bordered>thead>tr>th,.table-bordered>thead>tr>th,table-bordered>tbody>tr>th,.table-bordered>tbody>tr>th,table-bordered>tfoot>tr>th,.table-bordered>tfoot>tr>th,table-bordered>thead>tr>td,.table-bordered>thead>tr>td,table-bordered>tbody>tr>td,.table-bordered>tbody>tr>td,table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ecf0f1}.form-control,input{border-width:2px;-webkit-box-shadow:none;box-shadow:none}.form-control:focus,input:focus{-webkit-box-shadow:none;box-shadow:none}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning .form-control-feedback{color:#f39c12}.has-warning .form-control,.has-warning .form-control:focus{border:2px solid #f39c12}.has-warning .input-group-addon{border-color:#f39c12}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error .form-control-feedback{color:#e74c3c}.has-error .form-control,.has-error .form-control:focus{border:2px solid #e74c3c}.has-error .input-group-addon{border-color:#e74c3c}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success .form-control-feedback{color:#18bc9c}.has-success .form-control,.has-success .form-control:focus{border:2px solid #18bc9c}.has-success .input-group-addon{border-color:#18bc9c}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{border-color:transparent}.pager a,.pager a:hover{color:#fff}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{background-color:#3be6c4}.close{color:#fff;text-decoration:none;opacity:.4}.close:hover,.close:focus{color:#fff;opacity:1}.alert .alert-link{color:#fff;text-decoration:underline}.progress{height:10px;-webkit-box-shadow:none;box-shadow:none}.progress .progress-bar{font-size:10px;line-height:10px}.well{-webkit-box-shadow:none;box-shadow:none}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{border-color:#ecf0f1}a.list-group-item-success.active{background-color:#18bc9c}a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{background-color:#15a589}a.list-group-item-warning.active{background-color:#f39c12}a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{background-color:#e08e0b}a.list-group-item-danger.active{background-color:#e74c3c}a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{background-color:#e43725}.panel-default .close{color:#2c3e50}.modal .close{color:#2c3e50}.popover{color:#2c3e50}/*!
8
+ * Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome
9
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
10
+ */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.1.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.1.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.1.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.1.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0)}100%{-o-transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0,mirror=1);-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2,mirror=1);-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-square:before,.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}html{position:relative;min-height:100%}body{margin:0;margin-top:60px;background-color:#f5f5f5}section{width:100%;padding:0 5%;display:table;margin:0;max-width:none;padding-bottom:35px}.nav-container{width:100%;padding:0 5%;margin:0}.navbar-brand{padding-left:0}footer{bottom:0;width:100%;margin:0 auto;position:absolute;border-top:2px solid #dbdbdb;padding-top:10px}.alert-danger{background-color:#f2dede}.alert-danger p{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;text-align:left;font-weight:400;color:#ff1c21}.alert-danger h3{color:#ff1c21}.navbar-nav>li>a,.navbar-brand{line-height:27px}.navbar-brand a{color:#fff}.navbar-brand a:hover{text-decoration:none}.navbar-nav>li>a.nav_github_icon{padding-top:0;padding-bottom:0}.fa-github{color:#fff;padding-top:18px;padding-bottom:18px}h1 .small{color:#2c3e50}.input_seq-label{font-size:26px}#protein_example,#dna_example{cursor:pointer}#adv_params_btn{display:block;margin-left:auto;margin-right:auto;margin-top:20px}#input_btn{display:block;margin-left:auto;margin-right:auto}.show_examples_text{font-size:17px;text-align:center;margin-top:10px}.control-label{font-size:1.25em;font-weight:normal}label,.radio label,.checkbox label,.help-block{font-size:.9em;font-weight:inherit}.checkbox.inline.no_indent+.checkbox.inline.no_indent{margin-left:0;margin-right:10px}.checkbox.inline.no_indent:last-child{margin-right:0}label.checkbox-inline.no_indent{margin-left:0;margin-right:10px}label.radio-inline.no_indent{margin-left:0;margin-right:10px}#results_header{margin-top:0;margin-bottom:30px}#results_link_btn{margin-top:0;margin-right:-15px}.table{color:#333}.table thead tr{border-bottom:3px solid #DDD}.table td{font-size:13px !important;border-color:#ddd !important}table .success,.table .success,table .warning,.table .warning,table .danger,.table .danger,table .info,.table .info{color:#333}.table-bordered{border:0}.danger{background-color:#f2dede !important}.danger:hover{background-color:#f2cbcb !important}.success{background-color:#dff0d8 !important}.success:hover{background-color:#cce4c8 !important}.warning{background-color:#fcf8e3 !important}.alert-info{background-color:#d9edf7;border-color:#bce8f1;border-style:solid;border-width:1px;border-collapse:collapse;box-sizing:border-box;color:#31708f;display:block;margin-bottom:0;padding-bottom:15px;padding-left:15px;padding-right:15px;padding-top:15px}.explanation_alert p{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;text-align:left;font-weight:400}.plot_btn{color:#333;background-color:#fff;border-color:#ccc}.plot_btn:hover{color:#333;background-color:#ebebeb;border-color:#adadad}.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:0}.table-bordered>tbody>tr{border-bottom:2px solid #DDD}.error_header{margin-top:10px}.explanation_alert{margin-bottom:0}.table-responsive{overflow-x:auto}.table td{vertical-align:middle !important;border-collapse:collapse;background-clip:padding-box;text-align:left}.table th,.table thead td{background-color:#e8e8e8;white-space:nowrap}tr{height:39px}.expanded-child{display:block;text-align:center}.tablesorter-default .header,.tablesorter-default .tablesorter-header{background-image:url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);background-position:center right;background-repeat:no-repeat;cursor:pointer;padding:4px 20px 4px 4px}.tablesorter-default thead .headerSortUp,.tablesorter-default thead .tablesorter-headerSortUp,.tablesorter-default thead .tablesorter-headerAsc{background-image:url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);border-bottom:#000 3px solid !important}.tablesorter-default thead .headerSortDown,.tablesorter-default thead .tablesorter-headerSortDown,.tablesorter-default thead .tablesorter-headerDesc{background-image:url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);border-bottom:#000 3px solid !important}.tablesorter-default thead .sorter-false{background-image:none;cursor:default;padding:4px}.tablesorter-default .tablesorter-processing{background-position:center center !important;background-repeat:no-repeat !important;background-image:url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important}.table tbody td.success,.table tbody td.danger,.table tbody td.warning{padding-left:30px !important;position:relative}.table tbody td.success:before,.table tbody td.danger:before,.table tbody td.warning:before{font-family:FontAwesome;position:absolute;margin-left:-25px;font-size:1.5em;margin-top:-0.75em;top:50%}.table tbody td.success:before{content:"\f058";color:#1aa882}.table tbody td.danger:before{content:"\f057";color:#fc585a}.table tbody td.warning:before{content:"\f06a";color:#fcb83f}.table tbody td.success,.table tbody td.danger{cursor:pointer !important}.tooltip>.tooltip-inner{background-color:#fff;color:#000;border:1px solid #ccc;max-width:275px}.tooltip.top>.tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #CCC}.axis path,.axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.dot{stroke:#000;opacity:.7}.line1{fill:green;stroke:black;stroke-width:1.5px;opacity:.5}svg:not(:root){overflow:visible}svg{margin:15px}.ratings{position:relative;vertical-align:middle;display:inline-block;color:#b1b1b1;overflow:hidden}.full-stars{position:absolute;left:0;top:0;white-space:nowrap;overflow:hidden;color:#fde16d}.empty-stars:before,.full-stars:before{font-family:FontAwesome;content:"\f005\f005\f005\f005\f005";font-size:14pt}.empty-stars:before{-webkit-text-stroke:1px #848484}.full-stars:before{-webkit-text-stroke:1px orange}.menu_icon{padding-left:10px;font-weight:bold}#toggle{text-align:center}.tooltip-inner{white-space:pre-wrap;min-width:100px}#report{text-align:left}@media(min-width:768px){#adv_params_btn{float:left !important;margin-top:0}#input_btn{float:right !important}.show_examples_text{text-align:left}.container{width:90%}}@-moz-document url-prefix(){.full-stars{color:#ecbe24}}<!--[if IE]>.full-stars{color:#ecbe24}<![endif]-->
@@ -0,0 +1 @@
1
+ if(function(t,e){"object"==typeof module&&"object"==typeof module.exports?module.exports=t.document?e(t,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return e(t)}:e(t)}("undefined"!=typeof window?window:this,function(p,t){var e=[],c=e.slice,g=e.concat,s=e.push,i=e.indexOf,n={},r=n.toString,v=n.hasOwnProperty,m={},y=p.document,o="2.1.1",T=function(t,e){return new T.fn.init(t,e)},a=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,u=/^-ms-/,l=/-([\da-z])/gi,f=function(t,e){return e.toUpperCase()};function h(t){var e=t.length,n=T.type(t);return"function"!==n&&!T.isWindow(t)&&(!(1!==t.nodeType||!e)||("array"===n||0===e||"number"==typeof e&&0<e&&e-1 in t))}T.fn=T.prototype={jquery:o,constructor:T,selector:"",length:0,toArray:function(){return c.call(this)},get:function(t){return null!=t?t<0?this[t+this.length]:this[t]:c.call(this)},pushStack:function(t){var e=T.merge(this.constructor(),t);return e.prevObject=this,e.context=this.context,e},each:function(t,e){return T.each(this,t,e)},map:function(n){return this.pushStack(T.map(this,function(t,e){return n.call(t,e,t)}))},slice:function(){return this.pushStack(c.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,n=+t+(t<0?e:0);return this.pushStack(0<=n&&n<e?[this[n]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:s,sort:e.sort,splice:e.splice},T.extend=T.fn.extend=function(){var t,e,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||T.isFunction(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(t=arguments[s]))for(e in t)n=a[e],a!==(r=t[e])&&(l&&r&&(T.isPlainObject(r)||(i=T.isArray(r)))?(i?(i=!1,o=n&&T.isArray(n)?n:[]):o=n&&T.isPlainObject(n)?n:{},a[e]=T.extend(l,o,r)):void 0!==r&&(a[e]=r));return a},T.extend({expando:"jQuery"+(o+Math.random()).replace(/\D/g,""),isReady:!0,error:function(t){throw new Error(t)},noop:function(){},isFunction:function(t){return"function"===T.type(t)},isArray:Array.isArray,isWindow:function(t){return null!=t&&t===t.window},isNumeric:function(t){return!T.isArray(t)&&0<=t-parseFloat(t)},isPlainObject:function(t){return"object"===T.type(t)&&!t.nodeType&&!T.isWindow(t)&&!(t.constructor&&!v.call(t.constructor.prototype,"isPrototypeOf"))},isEmptyObject:function(t){var e;for(e in t)return!1;return!0},type:function(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?n[r.call(t)]||"object":typeof t},globalEval:function(t){var e,n=eval;(t=T.trim(t))&&(1===t.indexOf("use strict")?((e=y.createElement("script")).text=t,y.head.appendChild(e).parentNode.removeChild(e)):n(t))},camelCase:function(t){return t.replace(u,"ms-").replace(l,f)},nodeName:function(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()},each:function(t,e,n){var r=0,i=t.length,o=h(t);if(n){if(o)for(;r<i&&!1!==e.apply(t[r],n);r++);else for(r in t)if(!1===e.apply(t[r],n))break}else if(o)for(;r<i&&!1!==e.call(t[r],r,t[r]);r++);else for(r in t)if(!1===e.call(t[r],r,t[r]))break;return t},trim:function(t){return null==t?"":(t+"").replace(a,"")},makeArray:function(t,e){var n=e||[];return null!=t&&(h(Object(t))?T.merge(n,"string"==typeof t?[t]:t):s.call(n,t)),n},inArray:function(t,e,n){return null==e?-1:i.call(e,t,n)},merge:function(t,e){for(var n=+e.length,r=0,i=t.length;r<n;r++)t[i++]=e[r];return t.length=i,t},grep:function(t,e,n){for(var r=[],i=0,o=t.length,a=!n;i<o;i++)!e(t[i],i)!==a&&r.push(t[i]);return r},map:function(t,e,n){var r,i=0,o=t.length,a=[];if(h(t))for(;i<o;i++)null!=(r=e(t[i],i,n))&&a.push(r);else for(i in t)null!=(r=e(t[i],i,n))&&a.push(r);return g.apply([],a)},guid:1,proxy:function(t,e){var n,r,i;return"string"==typeof e&&(n=t[e],e=t,t=n),T.isFunction(t)?(r=c.call(arguments,2),(i=function(){return t.apply(e||this,r.concat(c.call(arguments)))}).guid=t.guid=t.guid||T.guid++,i):void 0},now:Date.now,support:m}),T.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(t,e){n["[object "+e+"]"]=e.toLowerCase()});var d=function(n){var t,p,x,o,r,g,f,v,w,l,c,m,C,i,y,b,a,s,T,M="sizzle"+-new Date,A=n.document,E=0,h=0,u=ot(),d=ot(),S=ot(),N=function(t,e){return t===e&&(c=!0),0},k="undefined",D=1<<31,_={}.hasOwnProperty,e=[],L=e.pop,G=e.push,F=e.push,$=e.slice,P=e.indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(this[e]===t)return e;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",I="[\\x20\\t\\r\\n\\f]",V="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",j=V.replace("w","w#"),q="\\["+I+"*("+V+")(?:"+I+"*([*^$|!~]?=)"+I+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+j+"))|)"+I+"*\\]",H=":("+V+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+q+")*)|.*)\\)|)",z=new RegExp("^"+I+"+|((?:^|[^\\\\])(?:\\\\.)*)"+I+"+$","g"),K=new RegExp("^"+I+"*,"+I+"*"),O=new RegExp("^"+I+"*([>+~]|"+I+")"+I+"*"),Q=new RegExp("="+I+"*([^\\]'\"]*?)"+I+"*\\]","g"),Y=new RegExp(H),W=new RegExp("^"+j+"$"),B={ID:new RegExp("^#("+V+")"),CLASS:new RegExp("^\\.("+V+")"),TAG:new RegExp("^("+V.replace("w","w*")+")"),ATTR:new RegExp("^"+q),PSEUDO:new RegExp("^"+H),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+I+"*(even|odd|(([+-]|)(\\d*)n|)"+I+"*(?:([+-]|)"+I+"*(\\d+)|))"+I+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+I+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+I+"*((?:-\\d)?\\d*)"+I+"*\\)|)(?=[^-]|$)","i")},U=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tt=/[+~]/,et=/'|\\/g,nt=new RegExp("\\\\([\\da-f]{1,6}"+I+"?|("+I+")|.)","ig"),rt=function(t,e,n){var r="0x"+e-65536;return r!=r||n?e:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)};try{F.apply(e=$.call(A.childNodes),A.childNodes),e[A.childNodes.length].nodeType}catch(t){F={apply:e.length?function(t,e){G.apply(t,$.call(e))}:function(t,e){for(var n=t.length,r=0;t[n++]=e[r++];);t.length=n-1}}}function it(t,e,n,r){var i,o,a,s,u,l,c,f,h,d;if((e?e.ownerDocument||e:A)!==C&&m(e),n=n||[],!t||"string"!=typeof t)return n;if(1!==(s=(e=e||C).nodeType)&&9!==s)return[];if(y&&!r){if(i=J.exec(t))if(a=i[1]){if(9===s){if(!(o=e.getElementById(a))||!o.parentNode)return n;if(o.id===a)return n.push(o),n}else if(e.ownerDocument&&(o=e.ownerDocument.getElementById(a))&&T(e,o)&&o.id===a)return n.push(o),n}else{if(i[2])return F.apply(n,e.getElementsByTagName(t)),n;if((a=i[3])&&p.getElementsByClassName&&e.getElementsByClassName)return F.apply(n,e.getElementsByClassName(a)),n}if(p.qsa&&(!b||!b.test(t))){if(f=c=M,h=e,d=9===s&&t,1===s&&"object"!==e.nodeName.toLowerCase()){for(l=g(t),(c=e.getAttribute("id"))?f=c.replace(et,"\\$&"):e.setAttribute("id",f),f="[id='"+f+"'] ",u=l.length;u--;)l[u]=f+gt(l[u]);h=tt.test(t)&&dt(e.parentNode)||e,d=l.join(",")}if(d)try{return F.apply(n,h.querySelectorAll(d)),n}catch(t){}finally{c||e.removeAttribute("id")}}}return v(t.replace(z,"$1"),e,n,r)}function ot(){var r=[];return function t(e,n){return r.push(e+" ")>x.cacheLength&&delete t[r.shift()],t[e+" "]=n}}function at(t){return t[M]=!0,t}function st(t){var e=C.createElement("div");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function ut(t,e){for(var n=t.split("|"),r=t.length;r--;)x.attrHandle[n[r]]=e}function lt(t,e){var n=e&&t,r=n&&1===t.nodeType&&1===e.nodeType&&(~e.sourceIndex||D)-(~t.sourceIndex||D);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function ct(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function ft(n){return function(t){var e=t.nodeName.toLowerCase();return("input"===e||"button"===e)&&t.type===n}}function ht(a){return at(function(o){return o=+o,at(function(t,e){for(var n,r=a([],t.length,o),i=r.length;i--;)t[n=r[i]]&&(t[n]=!(e[n]=t[n]))})})}function dt(t){return t&&typeof t.getElementsByTagName!==k&&t}for(t in p=it.support={},r=it.isXML=function(t){var e=t&&(t.ownerDocument||t).documentElement;return!!e&&"HTML"!==e.nodeName},m=it.setDocument=function(t){var e,u=t?t.ownerDocument||t:A,n=u.defaultView;return u!==C&&9===u.nodeType&&u.documentElement?(i=(C=u).documentElement,y=!r(u),n&&n!==n.top&&(n.addEventListener?n.addEventListener("unload",function(){m()},!1):n.attachEvent&&n.attachEvent("onunload",function(){m()})),p.attributes=st(function(t){return t.className="i",!t.getAttribute("className")}),p.getElementsByTagName=st(function(t){return t.appendChild(u.createComment("")),!t.getElementsByTagName("*").length}),p.getElementsByClassName=Z.test(u.getElementsByClassName)&&st(function(t){return t.innerHTML="<div class='a'></div><div class='a i'></div>",t.firstChild.className="i",2===t.getElementsByClassName("i").length}),p.getById=st(function(t){return i.appendChild(t).id=M,!u.getElementsByName||!u.getElementsByName(M).length}),p.getById?(x.find.ID=function(t,e){if(typeof e.getElementById!==k&&y){var n=e.getElementById(t);return n&&n.parentNode?[n]:[]}},x.filter.ID=function(t){var e=t.replace(nt,rt);return function(t){return t.getAttribute("id")===e}}):(delete x.find.ID,x.filter.ID=function(t){var n=t.replace(nt,rt);return function(t){var e=typeof t.getAttributeNode!==k&&t.getAttributeNode("id");return e&&e.value===n}}),x.find.TAG=p.getElementsByTagName?function(t,e){return typeof e.getElementsByTagName!==k?e.getElementsByTagName(t):void 0}:function(t,e){var n,r=[],i=0,o=e.getElementsByTagName(t);if("*"===t){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},x.find.CLASS=p.getElementsByClassName&&function(t,e){return typeof e.getElementsByClassName!==k&&y?e.getElementsByClassName(t):void 0},a=[],b=[],(p.qsa=Z.test(u.querySelectorAll))&&(st(function(t){t.innerHTML="<select msallowclip=''><option selected=''></option></select>",t.querySelectorAll("[msallowclip^='']").length&&b.push("[*^$]="+I+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||b.push("\\["+I+"*(?:value|"+R+")"),t.querySelectorAll(":checked").length||b.push(":checked")}),st(function(t){var e=u.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&b.push("name"+I+"*[*^$|!~]?="),t.querySelectorAll(":enabled").length||b.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),b.push(",.*:")})),(p.matchesSelector=Z.test(s=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.oMatchesSelector||i.msMatchesSelector))&&st(function(t){p.disconnectedMatch=s.call(t,"div"),s.call(t,"[s!='']:x"),a.push("!=",H)}),b=b.length&&new RegExp(b.join("|")),a=a.length&&new RegExp(a.join("|")),e=Z.test(i.compareDocumentPosition),T=e||Z.test(i.contains)?function(t,e){var n=9===t.nodeType?t.documentElement:t,r=e&&e.parentNode;return t===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):t.compareDocumentPosition&&16&t.compareDocumentPosition(r)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},N=e?function(t,e){if(t===e)return c=!0,0;var n=!t.compareDocumentPosition-!e.compareDocumentPosition;return n||(1&(n=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!p.sortDetached&&e.compareDocumentPosition(t)===n?t===u||t.ownerDocument===A&&T(A,t)?-1:e===u||e.ownerDocument===A&&T(A,e)?1:l?P.call(l,t)-P.call(l,e):0:4&n?-1:1)}:function(t,e){if(t===e)return c=!0,0;var n,r=0,i=t.parentNode,o=e.parentNode,a=[t],s=[e];if(!i||!o)return t===u?-1:e===u?1:i?-1:o?1:l?P.call(l,t)-P.call(l,e):0;if(i===o)return lt(t,e);for(n=t;n=n.parentNode;)a.unshift(n);for(n=e;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?lt(a[r],s[r]):a[r]===A?-1:s[r]===A?1:0},u):C},it.matches=function(t,e){return it(t,null,null,e)},it.matchesSelector=function(t,e){if((t.ownerDocument||t)!==C&&m(t),e=e.replace(Q,"='$1']"),!(!p.matchesSelector||!y||a&&a.test(e)||b&&b.test(e)))try{var n=s.call(t,e);if(n||p.disconnectedMatch||t.document&&11!==t.document.nodeType)return n}catch(t){}return 0<it(e,C,null,[t]).length},it.contains=function(t,e){return(t.ownerDocument||t)!==C&&m(t),T(t,e)},it.attr=function(t,e){(t.ownerDocument||t)!==C&&m(t);var n=x.attrHandle[e.toLowerCase()],r=n&&_.call(x.attrHandle,e.toLowerCase())?n(t,e,!y):void 0;return void 0!==r?r:p.attributes||!y?t.getAttribute(e):(r=t.getAttributeNode(e))&&r.specified?r.value:null},it.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},it.uniqueSort=function(t){var e,n=[],r=0,i=0;if(c=!p.detectDuplicates,l=!p.sortStable&&t.slice(0),t.sort(N),c){for(;e=t[i++];)e===t[i]&&(r=n.push(i));for(;r--;)t.splice(n[r],1)}return l=null,t},o=it.getText=function(t){var e,n="",r=0,i=t.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=o(t)}else if(3===i||4===i)return t.nodeValue}else for(;e=t[r++];)n+=o(e);return n},(x=it.selectors={cacheLength:50,createPseudo:at,match:B,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(nt,rt),t[3]=(t[3]||t[4]||t[5]||"").replace(nt,rt),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||it.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&it.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return B.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&Y.test(n)&&(e=g(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(nt,rt).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=u[t+" "];return e||(e=new RegExp("(^|"+I+")"+t+"("+I+"|$)"))&&u(t,function(t){return e.test("string"==typeof t.className&&t.className||typeof t.getAttribute!==k&&t.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(t){var e=it.attr(t,n);return null==e?"!="===r:!r||(e+="","="===r?e===i:"!="===r?e!==i:"^="===r?i&&0===e.indexOf(i):"*="===r?i&&-1<e.indexOf(i):"$="===r?i&&e.slice(-i.length)===i:"~="===r?-1<(" "+e+" ").indexOf(i):"|="===r&&(e===i||e.slice(0,i.length+1)===i+"-"))}},CHILD:function(d,t,e,p,g){var v="nth"!==d.slice(0,3),m="last"!==d.slice(-4),y="of-type"===t;return 1===p&&0===g?function(t){return!!t.parentNode}:function(t,e,n){var r,i,o,a,s,u,l=v!==m?"nextSibling":"previousSibling",c=t.parentNode,f=y&&t.nodeName.toLowerCase(),h=!n&&!y;if(c){if(v){for(;l;){for(o=t;o=o[l];)if(y?o.nodeName.toLowerCase()===f:1===o.nodeType)return!1;u=l="only"===d&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&h){for(s=(r=(i=c[M]||(c[M]={}))[d]||[])[0]===E&&r[1],a=r[0]===E&&r[2],o=s&&c.childNodes[s];o=++s&&o&&o[l]||(a=s=0)||u.pop();)if(1===o.nodeType&&++a&&o===t){i[d]=[E,s,a];break}}else if(h&&(r=(t[M]||(t[M]={}))[d])&&r[0]===E)a=r[1];else for(;(o=++s&&o&&o[l]||(a=s=0)||u.pop())&&((y?o.nodeName.toLowerCase()!==f:1!==o.nodeType)||!++a||(h&&((o[M]||(o[M]={}))[d]=[E,a]),o!==t)););return(a-=g)===p||a%p==0&&0<=a/p}}},PSEUDO:function(t,o){var e,a=x.pseudos[t]||x.setFilters[t.toLowerCase()]||it.error("unsupported pseudo: "+t);return a[M]?a(o):1<a.length?(e=[t,t,"",o],x.setFilters.hasOwnProperty(t.toLowerCase())?at(function(t,e){for(var n,r=a(t,o),i=r.length;i--;)t[n=P.call(t,r[i])]=!(e[n]=r[i])}):function(t){return a(t,0,e)}):a}},pseudos:{not:at(function(t){var r=[],i=[],s=f(t.replace(z,"$1"));return s[M]?at(function(t,e,n,r){for(var i,o=s(t,null,r,[]),a=t.length;a--;)(i=o[a])&&(t[a]=!(e[a]=i))}):function(t,e,n){return r[0]=t,s(r,null,n,i),!i.pop()}}),has:at(function(e){return function(t){return 0<it(e,t).length}}),contains:at(function(e){return function(t){return-1<(t.textContent||t.innerText||o(t)).indexOf(e)}}),lang:at(function(n){return W.test(n||"")||it.error("unsupported lang: "+n),n=n.replace(nt,rt).toLowerCase(),function(t){var e;do{if(e=y?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(e=e.toLowerCase())===n||0===e.indexOf(n+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var e=n.location&&n.location.hash;return e&&e.slice(1)===t.id},root:function(t){return t===i},focus:function(t){return t===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:function(t){return!1===t.disabled},disabled:function(t){return!0===t.disabled},checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!x.pseudos.empty(t)},header:function(t){return X.test(t.nodeName)},input:function(t){return U.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:ht(function(){return[0]}),last:ht(function(t,e){return[e-1]}),eq:ht(function(t,e,n){return[n<0?n+e:n]}),even:ht(function(t,e){for(var n=0;n<e;n+=2)t.push(n);return t}),odd:ht(function(t,e){for(var n=1;n<e;n+=2)t.push(n);return t}),lt:ht(function(t,e,n){for(var r=n<0?n+e:n;0<=--r;)t.push(r);return t}),gt:ht(function(t,e,n){for(var r=n<0?n+e:n;++r<e;)t.push(r);return t})}}).pseudos.nth=x.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})x.pseudos[t]=ct(t);for(t in{submit:!0,reset:!0})x.pseudos[t]=ft(t);function pt(){}function gt(t){for(var e=0,n=t.length,r="";e<n;e++)r+=t[e].value;return r}function vt(a,t,e){var s=t.dir,u=e&&"parentNode"===s,l=h++;return t.first?function(t,e,n){for(;t=t[s];)if(1===t.nodeType||u)return a(t,e,n)}:function(t,e,n){var r,i,o=[E,l];if(n){for(;t=t[s];)if((1===t.nodeType||u)&&a(t,e,n))return!0}else for(;t=t[s];)if(1===t.nodeType||u){if((r=(i=t[M]||(t[M]={}))[s])&&r[0]===E&&r[1]===l)return o[2]=r[2];if((i[s]=o)[2]=a(t,e,n))return!0}}}function mt(i){return 1<i.length?function(t,e,n){for(var r=i.length;r--;)if(!i[r](t,e,n))return!1;return!0}:i[0]}function yt(t,e,n,r,i){for(var o,a=[],s=0,u=t.length,l=null!=e;s<u;s++)(o=t[s])&&(!n||n(o,r,i))&&(a.push(o),l&&e.push(s));return a}function bt(d,p,g,v,m,t){return v&&!v[M]&&(v=bt(v)),m&&!m[M]&&(m=bt(m,t)),at(function(t,e,n,r){var i,o,a,s=[],u=[],l=e.length,c=t||function(t,e,n){for(var r=0,i=e.length;r<i;r++)it(t,e[r],n);return n}(p||"*",n.nodeType?[n]:n,[]),f=!d||!t&&p?c:yt(c,s,d,n,r),h=g?m||(t?d:l||v)?[]:e:f;if(g&&g(f,h,n,r),v)for(i=yt(h,u),v(i,[],n,r),o=i.length;o--;)(a=i[o])&&(h[u[o]]=!(f[u[o]]=a));if(t){if(m||d){if(m){for(i=[],o=h.length;o--;)(a=h[o])&&i.push(f[o]=a);m(null,h=[],i,r)}for(o=h.length;o--;)(a=h[o])&&-1<(i=m?P.call(t,a):s[o])&&(t[i]=!(e[i]=a))}}else h=yt(h===e?h.splice(l,h.length):h),m?m(null,e,h,r):F.apply(e,h)})}function xt(t){for(var r,e,n,i=t.length,o=x.relative[t[0].type],a=o||x.relative[" "],s=o?1:0,u=vt(function(t){return t===r},a,!0),l=vt(function(t){return-1<P.call(r,t)},a,!0),c=[function(t,e,n){return!o&&(n||e!==w)||((r=e).nodeType?u(t,e,n):l(t,e,n))}];s<i;s++)if(e=x.relative[t[s].type])c=[vt(mt(c),e)];else{if((e=x.filter[t[s].type].apply(null,t[s].matches))[M]){for(n=++s;n<i&&!x.relative[t[n].type];n++);return bt(1<s&&mt(c),1<s&&gt(t.slice(0,s-1).concat({value:" "===t[s-2].type?"*":""})).replace(z,"$1"),e,s<n&&xt(t.slice(s,n)),n<i&&xt(t=t.slice(n)),n<i&&gt(t))}c.push(e)}return mt(c)}return pt.prototype=x.filters=x.pseudos,x.setFilters=new pt,g=it.tokenize=function(t,e){var n,r,i,o,a,s,u,l=d[t+" "];if(l)return e?0:l.slice(0);for(a=t,s=[],u=x.preFilter;a;){for(o in(!n||(r=K.exec(a)))&&(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=O.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),a=a.slice(n.length)),x.filter)!(r=B[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return e?a.length:a?it.error(t):d(t,s).slice(0)},f=it.compile=function(t,e){var n,v,m,y,b,r,i=[],o=[],a=S[t+" "];if(!a){for(e||(e=g(t)),n=e.length;n--;)(a=xt(e[n]))[M]?i.push(a):o.push(a);(a=S(t,(v=o,y=0<(m=i).length,b=0<v.length,r=function(t,e,n,r,i){var o,a,s,u=0,l="0",c=t&&[],f=[],h=w,d=t||b&&x.find.TAG("*",i),p=E+=null==h?1:Math.random()||.1,g=d.length;for(i&&(w=e!==C&&e);l!==g&&null!=(o=d[l]);l++){if(b&&o){for(a=0;s=v[a++];)if(s(o,e,n)){r.push(o);break}i&&(E=p)}y&&((o=!s&&o)&&u--,t&&c.push(o))}if(u+=l,y&&l!==u){for(a=0;s=m[a++];)s(c,f,e,n);if(t){if(0<u)for(;l--;)c[l]||f[l]||(f[l]=L.call(r));f=yt(f)}F.apply(r,f),i&&!t&&0<f.length&&1<u+m.length&&it.uniqueSort(r)}return i&&(E=p,w=h),c},y?at(r):r))).selector=t}return a},v=it.select=function(t,e,n,r){var i,o,a,s,u,l="function"==typeof t&&t,c=!r&&g(t=l.selector||t);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&p.getById&&9===e.nodeType&&y&&x.relative[o[1].type]){if(!(e=(x.find.ID(a.matches[0].replace(nt,rt),e)||[])[0]))return n;l&&(e=e.parentNode),t=t.slice(o.shift().value.length)}for(i=B.needsContext.test(t)?0:o.length;i--&&(a=o[i],!x.relative[s=a.type]);)if((u=x.find[s])&&(r=u(a.matches[0].replace(nt,rt),tt.test(o[0].type)&&dt(e.parentNode)||e))){if(o.splice(i,1),!(t=r.length&&gt(o)))return F.apply(n,r),n;break}}return(l||f(t,c))(r,e,!y,n,tt.test(t)&&dt(e.parentNode)||e),n},p.sortStable=M.split("").sort(N).join("")===M,p.detectDuplicates=!!c,m(),p.sortDetached=st(function(t){return 1&t.compareDocumentPosition(C.createElement("div"))}),st(function(t){return t.innerHTML="<a href='#'></a>","#"===t.firstChild.getAttribute("href")})||ut("type|href|height|width",function(t,e,n){return n?void 0:t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),p.attributes&&st(function(t){return t.innerHTML="<input/>",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||ut("value",function(t,e,n){return n||"input"!==t.nodeName.toLowerCase()?void 0:t.defaultValue}),st(function(t){return null==t.getAttribute("disabled")})||ut(R,function(t,e,n){var r;return n?void 0:!0===t[e]?e.toLowerCase():(r=t.getAttributeNode(e))&&r.specified?r.value:null}),it}(p);T.find=d,T.expr=d.selectors,T.expr[":"]=T.expr.pseudos,T.unique=d.uniqueSort,T.text=d.getText,T.isXMLDoc=d.isXML,T.contains=d.contains;var b=T.expr.match.needsContext,x=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function C(t,n,r){if(T.isFunction(n))return T.grep(t,function(t,e){return!!n.call(t,e,t)!==r});if(n.nodeType)return T.grep(t,function(t){return t===n!==r});if("string"==typeof n){if(w.test(n))return T.filter(n,t,r);n=T.filter(n,t)}return T.grep(t,function(t){return 0<=i.call(n,t)!==r})}T.filter=function(t,e,n){var r=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===r.nodeType?T.find.matchesSelector(r,t)?[r]:[]:T.find.matches(t,T.grep(e,function(t){return 1===t.nodeType}))},T.fn.extend({find:function(t){var e,n=this.length,r=[],i=this;if("string"!=typeof t)return this.pushStack(T(t).filter(function(){for(e=0;e<n;e++)if(T.contains(i[e],this))return!0}));for(e=0;e<n;e++)T.find(t,i[e],r);return(r=this.pushStack(1<n?T.unique(r):r)).selector=this.selector?this.selector+" "+t:t,r},filter:function(t){return this.pushStack(C(this,t||[],!1))},not:function(t){return this.pushStack(C(this,t||[],!0))},is:function(t){return!!C(this,"string"==typeof t&&b.test(t)?T(t):t||[],!1).length}});var M,A=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;(T.fn.init=function(t,e){var n,r;if(!t)return this;if("string"==typeof t){if(!(n="<"===t[0]&&">"===t[t.length-1]&&3<=t.length?[null,t,null]:A.exec(t))||!n[1]&&e)return!e||e.jquery?(e||M).find(t):this.constructor(e).find(t);if(n[1]){if(e=e instanceof T?e[0]:e,T.merge(this,T.parseHTML(n[1],e&&e.nodeType?e.ownerDocument||e:y,!0)),x.test(n[1])&&T.isPlainObject(e))for(n in e)T.isFunction(this[n])?this[n](e[n]):this.attr(n,e[n]);return this}return(r=y.getElementById(n[2]))&&r.parentNode&&(this.length=1,this[0]=r),this.context=y,this.selector=t,this}return t.nodeType?(this.context=this[0]=t,this.length=1,this):T.isFunction(t)?void 0!==M.ready?M.ready(t):t(T):(void 0!==t.selector&&(this.selector=t.selector,this.context=t.context),T.makeArray(t,this))}).prototype=T.fn,M=T(y);var E=/^(?:parents|prev(?:Until|All))/,S={children:!0,contents:!0,next:!0,prev:!0};function N(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}T.extend({dir:function(t,e,n){for(var r=[],i=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(i&&T(t).is(n))break;r.push(t)}return r},sibling:function(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n}}),T.fn.extend({has:function(t){var e=T(t,this),n=e.length;return this.filter(function(){for(var t=0;t<n;t++)if(T.contains(this,e[t]))return!0})},closest:function(t,e){for(var n,r=0,i=this.length,o=[],a=b.test(t)||"string"!=typeof t?T(t,e||this.context):0;r<i;r++)for(n=this[r];n&&n!==e;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&T.find.matchesSelector(n,t))){o.push(n);break}return this.pushStack(1<o.length?T.unique(o):o)},index:function(t){return t?"string"==typeof t?i.call(T(t),this[0]):i.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(T.unique(T.merge(this.get(),T(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),T.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return T.dir(t,"parentNode")},parentsUntil:function(t,e,n){return T.dir(t,"parentNode",n)},next:function(t){return N(t,"nextSibling")},prev:function(t){return N(t,"previousSibling")},nextAll:function(t){return T.dir(t,"nextSibling")},prevAll:function(t){return T.dir(t,"previousSibling")},nextUntil:function(t,e,n){return T.dir(t,"nextSibling",n)},prevUntil:function(t,e,n){return T.dir(t,"previousSibling",n)},siblings:function(t){return T.sibling((t.parentNode||{}).firstChild,t)},children:function(t){return T.sibling(t.firstChild)},contents:function(t){return t.contentDocument||T.merge([],t.childNodes)}},function(r,i){T.fn[r]=function(t,e){var n=T.map(this,i,t);return"Until"!==r.slice(-5)&&(e=t),e&&"string"==typeof e&&(n=T.filter(e,n)),1<this.length&&(S[r]||T.unique(n),E.test(r)&&n.reverse()),this.pushStack(n)}});var k,D=/\S+/g,_={};function L(){y.removeEventListener("DOMContentLoaded",L,!1),p.removeEventListener("load",L,!1),T.ready()}T.Callbacks=function(i){var t,n;i="string"==typeof i?_[i]||(n=_[t=i]={},T.each(t.match(D)||[],function(t,e){n[e]=!0}),n):T.extend({},i);var e,r,o,a,s,u,l=[],c=!i.once&&[],f=function(t){for(e=i.memory&&t,r=!0,u=a||0,a=0,s=l.length,o=!0;l&&u<s;u++)if(!1===l[u].apply(t[0],t[1])&&i.stopOnFalse){e=!1;break}o=!1,l&&(c?c.length&&f(c.shift()):e?l=[]:h.disable())},h={add:function(){if(l){var t=l.length;!function r(t){T.each(t,function(t,e){var n=T.type(e);"function"===n?i.unique&&h.has(e)||l.push(e):e&&e.length&&"string"!==n&&r(e)})}(arguments),o?s=l.length:e&&(a=t,f(e))}return this},remove:function(){return l&&T.each(arguments,function(t,e){for(var n;-1<(n=T.inArray(e,l,n));)l.splice(n,1),o&&(n<=s&&s--,n<=u&&u--)}),this},has:function(t){return t?-1<T.inArray(t,l):!(!l||!l.length)},empty:function(){return l=[],s=0,this},disable:function(){return l=c=e=void 0,this},disabled:function(){return!l},lock:function(){return c=void 0,e||h.disable(),this},locked:function(){return!c},fireWith:function(t,e){return!l||r&&!c||(e=[t,(e=e||[]).slice?e.slice():e],o?c.push(e):f(e)),this},fire:function(){return h.fireWith(this,arguments),this},fired:function(){return!!r}};return h},T.extend({Deferred:function(t){var o=[["resolve","done",T.Callbacks("once memory"),"resolved"],["reject","fail",T.Callbacks("once memory"),"rejected"],["notify","progress",T.Callbacks("memory")]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},then:function(){var i=arguments;return T.Deferred(function(r){T.each(o,function(t,e){var n=T.isFunction(i[t])&&i[t];s[e[1]](function(){var t=n&&n.apply(this,arguments);t&&T.isFunction(t.promise)?t.promise().done(r.resolve).fail(r.reject).progress(r.notify):r[e[0]+"With"](this===a?r.promise():this,n?[t]:arguments)})}),i=null}).promise()},promise:function(t){return null!=t?T.extend(t,a):a}},s={};return a.pipe=a.then,T.each(o,function(t,e){var n=e[2],r=e[3];a[e[1]]=n.add,r&&n.add(function(){i=r},o[1^t][2].disable,o[2][2].lock),s[e[0]]=function(){return s[e[0]+"With"](this===s?a:this,arguments),this},s[e[0]+"With"]=n.fireWith}),a.promise(s),t&&t.call(s,s),s},when:function(t){var i,e,n,r=0,o=c.call(arguments),a=o.length,s=1!==a||t&&T.isFunction(t.promise)?a:0,u=1===s?t:T.Deferred(),l=function(e,n,r){return function(t){n[e]=this,r[e]=1<arguments.length?c.call(arguments):t,r===i?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(1<a)for(i=new Array(a),e=new Array(a),n=new Array(a);r<a;r++)o[r]&&T.isFunction(o[r].promise)?o[r].promise().done(l(r,n,o)).fail(u.reject).progress(l(r,e,i)):--s;return s||u.resolveWith(n,o),u.promise()}}),T.fn.ready=function(t){return T.ready.promise().done(t),this},T.extend({isReady:!1,readyWait:1,holdReady:function(t){t?T.readyWait++:T.ready(!0)},ready:function(t){(!0===t?--T.readyWait:T.isReady)||((T.isReady=!0)!==t&&0<--T.readyWait||(k.resolveWith(y,[T]),T.fn.triggerHandler&&(T(y).triggerHandler("ready"),T(y).off("ready"))))}}),T.ready.promise=function(t){return k||(k=T.Deferred(),"complete"===y.readyState?setTimeout(T.ready):(y.addEventListener("DOMContentLoaded",L,!1),p.addEventListener("load",L,!1))),k.promise(t)},T.ready.promise();var G=T.access=function(t,e,n,r,i,o,a){var s=0,u=t.length,l=null==n;if("object"===T.type(n))for(s in i=!0,n)T.access(t,e,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,T.isFunction(r)||(a=!0),l&&(a?(e.call(t,r),e=null):(l=e,e=function(t,e,n){return l.call(T(t),n)})),e))for(;s<u;s++)e(t[s],n,a?r:r.call(t[s],s,e(t[s],n)));return i?t:l?e.call(t):u?e(t[0],n):o};function F(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=T.expando+Math.random()}T.acceptData=function(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType},F.uid=1,F.accepts=T.acceptData,F.prototype={key:function(e){if(!F.accepts(e))return 0;var n={},r=e[this.expando];if(!r){r=F.uid++;try{n[this.expando]={value:r},Object.defineProperties(e,n)}catch(t){n[this.expando]=r,T.extend(e,n)}}return this.cache[r]||(this.cache[r]={}),r},set:function(t,e,n){var r,i=this.key(t),o=this.cache[i];if("string"==typeof e)o[e]=n;else if(T.isEmptyObject(o))T.extend(this.cache[i],e);else for(r in e)o[r]=e[r];return o},get:function(t,e){var n=this.cache[this.key(t)];return void 0===e?n:n[e]},access:function(t,e,n){var r;return void 0===e||e&&"string"==typeof e&&void 0===n?void 0!==(r=this.get(t,e))?r:this.get(t,T.camelCase(e)):(this.set(t,e,n),void 0!==n?n:e)},remove:function(t,e){var n,r,i,o=this.key(t),a=this.cache[o];if(void 0===e)this.cache[o]={};else{T.isArray(e)?r=e.concat(e.map(T.camelCase)):(i=T.camelCase(e),e in a?r=[e,i]:r=(r=i)in a?[r]:r.match(D)||[]),n=r.length;for(;n--;)delete a[r[n]]}},hasData:function(t){return!T.isEmptyObject(this.cache[t[this.expando]]||{})},discard:function(t){t[this.expando]&&delete this.cache[t[this.expando]]}};var $=new F,P=new F,R=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,I=/([A-Z])/g;function V(t,e,n){var r;if(void 0===n&&1===t.nodeType)if(r="data-"+e.replace(I,"-$1").toLowerCase(),"string"==typeof(n=t.getAttribute(r))){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:R.test(n)?T.parseJSON(n):n)}catch(t){}P.set(t,e,n)}else n=void 0;return n}T.extend({hasData:function(t){return P.hasData(t)||$.hasData(t)},data:function(t,e,n){return P.access(t,e,n)},removeData:function(t,e){P.remove(t,e)},_data:function(t,e,n){return $.access(t,e,n)},_removeData:function(t,e){$.remove(t,e)}}),T.fn.extend({data:function(r,t){var e,n,i,o=this[0],a=o&&o.attributes;if(void 0===r){if(this.length&&(i=P.get(o),1===o.nodeType&&!$.get(o,"hasDataAttrs"))){for(e=a.length;e--;)a[e]&&(0===(n=a[e].name).indexOf("data-")&&(n=T.camelCase(n.slice(5)),V(o,n,i[n])));$.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof r?this.each(function(){P.set(this,r)}):G(this,function(e){var t,n=T.camelCase(r);if(o&&void 0===e){if(void 0!==(t=P.get(o,r)))return t;if(void 0!==(t=P.get(o,n)))return t;if(void 0!==(t=V(o,n,void 0)))return t}else this.each(function(){var t=P.get(this,n);P.set(this,n,e),-1!==r.indexOf("-")&&void 0!==t&&P.set(this,r,e)})},null,t,1<arguments.length,null,!0)},removeData:function(t){return this.each(function(){P.remove(this,t)})}}),T.extend({queue:function(t,e,n){var r;return t?(e=(e||"fx")+"queue",r=$.get(t,e),n&&(!r||T.isArray(n)?r=$.access(t,e,T.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(t,e){e=e||"fx";var n=T.queue(t,e),r=n.length,i=n.shift(),o=T._queueHooks(t,e);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===e&&n.unshift("inprogress"),delete o.stop,i.call(t,function(){T.dequeue(t,e)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return $.get(t,n)||$.access(t,n,{empty:T.Callbacks("once memory").add(function(){$.remove(t,[e+"queue",n])})})}}),T.fn.extend({queue:function(e,n){var t=2;return"string"!=typeof e&&(n=e,e="fx",t--),arguments.length<t?T.queue(this[0],e):void 0===n?this:this.each(function(){var t=T.queue(this,e,n);T._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&T.dequeue(this,e)})},dequeue:function(t){return this.each(function(){T.dequeue(this,t)})},clearQueue:function(t){return this.queue(t||"fx",[])},promise:function(t,e){var n,r=1,i=T.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof t&&(e=t,t=void 0),t=t||"fx";a--;)(n=$.get(o[a],t+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(e)}});var j,q,H=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,z=["Top","Right","Bottom","Left"],K=function(t,e){return t=e||t,"none"===T.css(t,"display")||!T.contains(t.ownerDocument,t)},O=/^(?:checkbox|radio)$/i;j=y.createDocumentFragment().appendChild(y.createElement("div")),(q=y.createElement("input")).setAttribute("type","radio"),q.setAttribute("checked","checked"),q.setAttribute("name","t"),j.appendChild(q),m.checkClone=j.cloneNode(!0).cloneNode(!0).lastChild.checked,j.innerHTML="<textarea>x</textarea>",m.noCloneChecked=!!j.cloneNode(!0).lastChild.defaultValue;var Q="undefined";m.focusinBubbles="onfocusin"in p;var Y=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,B=/^(?:focusinfocus|focusoutblur)$/,U=/^([^.]*)(?:\.(.+)|)$/;function X(){return!0}function Z(){return!1}function J(){try{return y.activeElement}catch(t){}}T.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,h,d,p,g,v=$.get(e);if(v)for(n.handler&&(n=(o=n).handler,i=o.selector),n.guid||(n.guid=T.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(t){return typeof T!==Q&&T.event.triggered!==t.type?T.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(D)||[""]).length;l--;)d=g=(s=U.exec(t[l])||[])[1],p=(s[2]||"").split(".").sort(),d&&(f=T.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=T.event.special[d]||{},c=T.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&T.expr.match.needsContext.test(i),namespace:p.join(".")},o),(h=u[d])||((h=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,p,a)||e.addEventListener&&e.addEventListener(d,a,!1)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?h.splice(h.delegateCount++,0,c):h.push(c),T.event.global[d]=!0)},remove:function(t,e,n,r,i){var o,a,s,u,l,c,f,h,d,p,g,v=$.hasData(t)&&$.get(t);if(v&&(u=v.events)){for(l=(e=(e||"").match(D)||[""]).length;l--;)if(d=g=(s=U.exec(e[l])||[])[1],p=(s[2]||"").split(".").sort(),d){for(f=T.event.special[d]||{},h=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=h.length;o--;)c=h[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(h.splice(o,1),c.selector&&h.delegateCount--,f.remove&&f.remove.call(t,c));a&&!h.length&&(f.teardown&&!1!==f.teardown.call(t,p,v.handle)||T.removeEvent(t,d,v.handle),delete u[d])}else for(d in u)T.event.remove(t,d+e[l],n,r,!0);T.isEmptyObject(u)&&(delete v.handle,$.remove(t,"events"))}},trigger:function(t,e,n,r){var i,o,a,s,u,l,c,f=[n||y],h=v.call(t,"type")?t.type:t,d=v.call(t,"namespace")?t.namespace.split("."):[];if(o=a=n=n||y,3!==n.nodeType&&8!==n.nodeType&&!B.test(h+T.event.triggered)&&(0<=h.indexOf(".")&&(h=(d=h.split(".")).shift(),d.sort()),u=h.indexOf(":")<0&&"on"+h,(t=t[T.expando]?t:new T.Event(h,"object"==typeof t&&t)).isTrigger=r?2:3,t.namespace=d.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),e=null==e?[t]:T.makeArray(e,[t]),c=T.event.special[h]||{},r||!c.trigger||!1!==c.trigger.apply(n,e))){if(!r&&!c.noBubble&&!T.isWindow(n)){for(s=c.delegateType||h,B.test(s+h)||(o=o.parentNode);o;o=o.parentNode)f.push(o),a=o;a===(n.ownerDocument||y)&&f.push(a.defaultView||a.parentWindow||p)}for(i=0;(o=f[i++])&&!t.isPropagationStopped();)t.type=1<i?s:c.bindType||h,(l=($.get(o,"events")||{})[t.type]&&$.get(o,"handle"))&&l.apply(o,e),(l=u&&o[u])&&l.apply&&T.acceptData(o)&&(t.result=l.apply(o,e),!1===t.result&&t.preventDefault());return t.type=h,r||t.isDefaultPrevented()||c._default&&!1!==c._default.apply(f.pop(),e)||!T.acceptData(n)||u&&T.isFunction(n[h])&&!T.isWindow(n)&&((a=n[u])&&(n[u]=null),n[T.event.triggered=h](),T.event.triggered=void 0,a&&(n[u]=a)),t.result}},dispatch:function(t){t=T.event.fix(t);var e,n,r,i,o,a=[],s=c.call(arguments),u=($.get(this,"events")||{})[t.type]||[],l=T.event.special[t.type]||{};if((s[0]=t).delegateTarget=this,!l.preDispatch||!1!==l.preDispatch.call(this,t)){for(a=T.event.handlers.call(this,t,u),e=0;(i=a[e++])&&!t.isPropagationStopped();)for(t.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!t.isImmediatePropagationStopped();)(!t.namespace_re||t.namespace_re.test(o.namespace))&&(t.handleObj=o,t.data=o.data,void 0!==(r=((T.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(t.result=r)&&(t.preventDefault(),t.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,t),t.result}},handlers:function(t,e){var n,r,i,o,a=[],s=e.delegateCount,u=t.target;if(s&&u.nodeType&&(!t.button||"click"!==t.type))for(;u!==this;u=u.parentNode||this)if(!0!==u.disabled||"click"!==t.type){for(r=[],n=0;n<s;n++)void 0===r[i=(o=e[n]).selector+" "]&&(r[i]=o.needsContext?0<=T(i,this).index(u):T.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&a.push({elem:u,handlers:r})}return s<e.length&&a.push({elem:this,handlers:e.slice(s)}),a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(t,e){return null==t.which&&(t.which=null!=e.charCode?e.charCode:e.keyCode),t}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(t,e){var n,r,i,o=e.button;return null==t.pageX&&null!=e.clientX&&(r=(n=t.target.ownerDocument||y).documentElement,i=n.body,t.pageX=e.clientX+(r&&r.scrollLeft||i&&i.scrollLeft||0)-(r&&r.clientLeft||i&&i.clientLeft||0),t.pageY=e.clientY+(r&&r.scrollTop||i&&i.scrollTop||0)-(r&&r.clientTop||i&&i.clientTop||0)),t.which||void 0===o||(t.which=1&o?1:2&o?3:4&o?2:0),t}},fix:function(t){if(t[T.expando])return t;var e,n,r,i=t.type,o=t,a=this.fixHooks[i];for(a||(this.fixHooks[i]=a=W.test(i)?this.mouseHooks:Y.test(i)?this.keyHooks:{}),r=a.props?this.props.concat(a.props):this.props,t=new T.Event(o),e=r.length;e--;)t[n=r[e]]=o[n];return t.target||(t.target=y),3===t.target.nodeType&&(t.target=t.target.parentNode),a.filter?a.filter(t,o):t},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==J()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===J()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&T.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(t){return T.nodeName(t.target,"a")}},beforeunload:{postDispatch:function(t){void 0!==t.result&&t.originalEvent&&(t.originalEvent.returnValue=t.result)}}},simulate:function(t,e,n,r){var i=T.extend(new T.Event,n,{type:t,isSimulated:!0,originalEvent:{}});r?T.event.trigger(i,null,e):T.event.dispatch.call(e,i),i.isDefaultPrevented()&&n.preventDefault()}},T.removeEvent=function(t,e,n){t.removeEventListener&&t.removeEventListener(e,n,!1)},T.Event=function(t,e){return this instanceof T.Event?(t&&t.type?(this.originalEvent=t,this.type=t.type,this.isDefaultPrevented=t.defaultPrevented||void 0===t.defaultPrevented&&!1===t.returnValue?X:Z):this.type=t,e&&T.extend(this,e),this.timeStamp=t&&t.timeStamp||T.now(),void(this[T.expando]=!0)):new T.Event(t,e)},T.Event.prototype={isDefaultPrevented:Z,isPropagationStopped:Z,isImmediatePropagationStopped:Z,preventDefault:function(){var t=this.originalEvent;this.isDefaultPrevented=X,t&&t.preventDefault&&t.preventDefault()},stopPropagation:function(){var t=this.originalEvent;this.isPropagationStopped=X,t&&t.stopPropagation&&t.stopPropagation()},stopImmediatePropagation:function(){var t=this.originalEvent;this.isImmediatePropagationStopped=X,t&&t.stopImmediatePropagation&&t.stopImmediatePropagation(),this.stopPropagation()}},T.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(t,i){T.event.special[t]={delegateType:i,bindType:i,handle:function(t){var e,n=t.relatedTarget,r=t.handleObj;return(!n||n!==this&&!T.contains(this,n))&&(t.type=r.origType,e=r.handler.apply(this,arguments),t.type=i),e}}}),m.focusinBubbles||T.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(t){T.event.simulate(r,t.target,T.event.fix(t),!0)};T.event.special[r]={setup:function(){var t=this.ownerDocument||this,e=$.access(t,r);e||t.addEventListener(n,i,!0),$.access(t,r,(e||0)+1)},teardown:function(){var t=this.ownerDocument||this,e=$.access(t,r)-1;e?$.access(t,r,e):(t.removeEventListener(n,i,!0),$.remove(t,r))}}}),T.fn.extend({on:function(t,e,n,r,i){var o,a;if("object"==typeof t){for(a in"string"!=typeof e&&(n=n||e,e=void 0),t)this.on(a,e,n,t[a],i);return this}if(null==n&&null==r?(r=e,n=e=void 0):null==r&&("string"==typeof e?(r=n,n=void 0):(r=n,n=e,e=void 0)),!1===r)r=Z;else if(!r)return this;return 1===i&&(o=r,(r=function(t){return T().off(t),o.apply(this,arguments)}).guid=o.guid||(o.guid=T.guid++)),this.each(function(){T.event.add(this,t,r,n,e)})},one:function(t,e,n,r){return this.on(t,e,n,r,1)},off:function(t,e,n){var r,i;if(t&&t.preventDefault&&t.handleObj)return r=t.handleObj,T(t.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof t){for(i in t)this.off(i,e,t[i]);return this}return(!1===e||"function"==typeof e)&&(n=e,e=void 0),!1===n&&(n=Z),this.each(function(){T.event.remove(this,t,n,e)})},trigger:function(t,e){return this.each(function(){T.event.trigger(t,e,this)})},triggerHandler:function(t,e){var n=this[0];return n?T.event.trigger(t,e,n,!0):void 0}});var tt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,et=/<([\w:]+)/,nt=/<|&#?\w+;/,rt=/<(?:script|style|link)/i,it=/checked\s*(?:[^=]|=\s*.checked.)/i,ot=/^$|\/(?:java|ecma)script/i,at=/^true\/(.*)/,st=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,ut={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function lt(t,e){return T.nodeName(t,"table")&&T.nodeName(11!==e.nodeType?e:e.firstChild,"tr")?t.getElementsByTagName("tbody")[0]||t.appendChild(t.ownerDocument.createElement("tbody")):t}function ct(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function ft(t){var e=at.exec(t.type);return e?t.type=e[1]:t.removeAttribute("type"),t}function ht(t,e){for(var n=0,r=t.length;n<r;n++)$.set(t[n],"globalEval",!e||$.get(e[n],"globalEval"))}function dt(t,e){var n,r,i,o,a,s,u,l;if(1===e.nodeType){if($.hasData(t)&&(o=$.access(t),a=$.set(e,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n<r;n++)T.event.add(e,i,l[i][n]);P.hasData(t)&&(s=P.access(t),u=T.extend({},s),P.set(e,u))}}function pt(t,e){var n=t.getElementsByTagName?t.getElementsByTagName(e||"*"):t.querySelectorAll?t.querySelectorAll(e||"*"):[];return void 0===e||e&&T.nodeName(t,e)?T.merge([t],n):n}ut.optgroup=ut.option,ut.tbody=ut.tfoot=ut.colgroup=ut.caption=ut.thead,ut.th=ut.td,T.extend({clone:function(t,e,n){var r,i,o,a,s,u,l,c=t.cloneNode(!0),f=T.contains(t.ownerDocument,t);if(!(m.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||T.isXMLDoc(t)))for(a=pt(c),r=0,i=(o=pt(t)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&O.test(s.type)?u.checked=s.checked:("input"===l||"textarea"===l)&&(u.defaultValue=s.defaultValue);if(e)if(n)for(o=o||pt(t),a=a||pt(c),r=0,i=o.length;r<i;r++)dt(o[r],a[r]);else dt(t,c);return 0<(a=pt(c,"script")).length&&ht(a,!f&&pt(t,"script")),c},buildFragment:function(t,e,n,r){for(var i,o,a,s,u,l,c=e.createDocumentFragment(),f=[],h=0,d=t.length;h<d;h++)if((i=t[h])||0===i)if("object"===T.type(i))T.merge(f,i.nodeType?[i]:i);else if(nt.test(i)){for(o=o||c.appendChild(e.createElement("div")),a=(et.exec(i)||["",""])[1].toLowerCase(),s=ut[a]||ut._default,o.innerHTML=s[1]+i.replace(tt,"<$1></$2>")+s[2],l=s[0];l--;)o=o.lastChild;T.merge(f,o.childNodes),(o=c.firstChild).textContent=""}else f.push(e.createTextNode(i));for(c.textContent="",h=0;i=f[h++];)if((!r||-1===T.inArray(i,r))&&(u=T.contains(i.ownerDocument,i),o=pt(c.appendChild(i),"script"),u&&ht(o),n))for(l=0;i=o[l++];)ot.test(i.type||"")&&n.push(i);return c},cleanData:function(t){for(var e,n,r,i,o=T.event.special,a=0;void 0!==(n=t[a]);a++){if(T.acceptData(n)&&((i=n[$.expando])&&(e=$.cache[i]))){if(e.events)for(r in e.events)o[r]?T.event.remove(n,r):T.removeEvent(n,r,e.handle);$.cache[i]&&delete $.cache[i]}delete P.cache[n[P.expando]]}}}),T.fn.extend({text:function(t){return G(this,function(t){return void 0===t?T.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=t)})},null,t,arguments.length)},append:function(){return this.domManip(arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||lt(this,t).appendChild(t)})},prepend:function(){return this.domManip(arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=lt(this,t);e.insertBefore(t,e.firstChild)}})},before:function(){return this.domManip(arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return this.domManip(arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},remove:function(t,e){for(var n,r=t?T.filter(t,this):this,i=0;null!=(n=r[i]);i++)e||1!==n.nodeType||T.cleanData(pt(n)),n.parentNode&&(e&&T.contains(n.ownerDocument,n)&&ht(pt(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(T.cleanData(pt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return T.clone(this,t,e)})},html:function(t){return G(this,function(t){var e=this[0]||{},n=0,r=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!rt.test(t)&&!ut[(et.exec(t)||["",""])[1].toLowerCase()]){t=t.replace(tt,"<$1></$2>");try{for(;n<r;n++)1===(e=this[n]||{}).nodeType&&(T.cleanData(pt(e,!1)),e.innerHTML=t);e=0}catch(t){}}e&&this.empty().append(t)},null,t,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,function(t){e=this.parentNode,T.cleanData(pt(this)),e&&e.replaceChild(t,this)}),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(t){return this.remove(t,!0)},domManip:function(n,r){n=g.apply([],n);var t,e,i,o,a,s,u=0,l=this.length,c=this,f=l-1,h=n[0],d=T.isFunction(h);if(d||1<l&&"string"==typeof h&&!m.checkClone&&it.test(h))return this.each(function(t){var e=c.eq(t);d&&(n[0]=h.call(this,t,e.html())),e.domManip(n,r)});if(l&&(e=(t=T.buildFragment(n,this[0].ownerDocument,!1,this)).firstChild,1===t.childNodes.length&&(t=e),e)){for(o=(i=T.map(pt(t,"script"),ct)).length;u<l;u++)a=t,u!==f&&(a=T.clone(a,!0,!0),o&&T.merge(i,pt(a,"script"))),r.call(this[u],a,u);if(o)for(s=i[i.length-1].ownerDocument,T.map(i,ft),u=0;u<o;u++)a=i[u],ot.test(a.type||"")&&!$.access(a,"globalEval")&&T.contains(s,a)&&(a.src?T._evalUrl&&T._evalUrl(a.src):T.globalEval(a.textContent.replace(st,"")))}return this}}),T.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(t,a){T.fn[t]=function(t){for(var e,n=[],r=T(t),i=r.length-1,o=0;o<=i;o++)e=o===i?this:this.clone(!0),T(r[o])[a](e),s.apply(n,e.get());return this.pushStack(n)}});var gt,vt={};function mt(t,e){var n,r=T(e.createElement(t)).appendTo(e.body),i=p.getDefaultComputedStyle&&(n=p.getDefaultComputedStyle(r[0]))?n.display:T.css(r[0],"display");return r.detach(),i}function yt(t){var e=y,n=vt[t];return n||("none"!==(n=mt(t,e))&&n||((e=(gt=(gt||T("<iframe frameborder='0' width='0' height='0'/>")).appendTo(e.documentElement))[0].contentDocument).write(),e.close(),n=mt(t,e),gt.detach()),vt[t]=n),n}var bt=/^margin/,xt=new RegExp("^("+H+")(?!px)[a-z%]+$","i"),wt=function(t){return t.ownerDocument.defaultView.getComputedStyle(t,null)};function Ct(t,e,n){var r,i,o,a,s=t.style;return(n=n||wt(t))&&(a=n.getPropertyValue(e)||n[e]),n&&(""!==a||T.contains(t.ownerDocument,t)||(a=T.style(t,e)),xt.test(a)&&bt.test(e)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Tt(t,e){return{get:function(){return t()?void delete this.get:(this.get=e).apply(this,arguments)}}}!function(){var e,n,r=y.documentElement,i=y.createElement("div"),o=y.createElement("div");if(o.style){function t(){o.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",o.innerHTML="",r.appendChild(i);var t=p.getComputedStyle(o,null);e="1%"!==t.top,n="4px"===t.width,r.removeChild(i)}o.style.backgroundClip="content-box",o.cloneNode(!0).style.backgroundClip="",m.clearCloneStyle="content-box"===o.style.backgroundClip,i.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",i.appendChild(o),p.getComputedStyle&&T.extend(m,{pixelPosition:function(){return t(),e},boxSizingReliable:function(){return null==n&&t(),n},reliableMarginRight:function(){var t,e=o.appendChild(y.createElement("div"));return e.style.cssText=o.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",o.style.width="1px",r.appendChild(i),t=!parseFloat(p.getComputedStyle(e,null).marginRight),r.removeChild(i),t}})}}(),T.swap=function(t,e,n,r){var i,o,a={};for(o in e)a[o]=t.style[o],t.style[o]=e[o];for(o in i=n.apply(t,r||[]),e)t.style[o]=a[o];return i};var Mt=/^(none|table(?!-c[ea]).+)/,At=new RegExp("^("+H+")(.*)$","i"),Et=new RegExp("^([+-])=("+H+")","i"),St={position:"absolute",visibility:"hidden",display:"block"},Nt={letterSpacing:"0",fontWeight:"400"},kt=["Webkit","O","Moz","ms"];function Dt(t,e){if(e in t)return e;for(var n=e[0].toUpperCase()+e.slice(1),r=e,i=kt.length;i--;)if((e=kt[i]+n)in t)return e;return r}function _t(t,e,n){var r=At.exec(e);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):e}function Lt(t,e,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===e?1:0,a=0;o<4;o+=2)"margin"===n&&(a+=T.css(t,n+z[o],!0,i)),r?("content"===n&&(a-=T.css(t,"padding"+z[o],!0,i)),"margin"!==n&&(a-=T.css(t,"border"+z[o]+"Width",!0,i))):(a+=T.css(t,"padding"+z[o],!0,i),"padding"!==n&&(a+=T.css(t,"border"+z[o]+"Width",!0,i)));return a}function Gt(t,e,n){var r=!0,i="width"===e?t.offsetWidth:t.offsetHeight,o=wt(t),a="border-box"===T.css(t,"boxSizing",!1,o);if(i<=0||null==i){if(((i=Ct(t,e,o))<0||null==i)&&(i=t.style[e]),xt.test(i))return i;r=a&&(m.boxSizingReliable()||i===t.style[e]),i=parseFloat(i)||0}return i+Lt(t,e,n||(a?"border":"content"),r,o)+"px"}function Ft(t,e){for(var n,r,i,o=[],a=0,s=t.length;a<s;a++)(r=t[a]).style&&(o[a]=$.get(r,"olddisplay"),n=r.style.display,e?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&K(r)&&(o[a]=$.access(r,"olddisplay",yt(r.nodeName)))):(i=K(r),"none"===n&&i||$.set(r,"olddisplay",i?n:T.css(r,"display"))));for(a=0;a<s;a++)(r=t[a]).style&&(e&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=e?o[a]||"":"none"));return t}function $t(t,e,n,r,i){return new $t.prototype.init(t,e,n,r,i)}T.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=Ct(t,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(t,e,n,r){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var i,o,a,s=T.camelCase(e),u=t.style;return e=T.cssProps[s]||(T.cssProps[s]=Dt(u,s)),a=T.cssHooks[e]||T.cssHooks[s],void 0===n?a&&"get"in a&&void 0!==(i=a.get(t,!1,r))?i:u[e]:("string"===(o=typeof n)&&(i=Et.exec(n))&&(n=(i[1]+1)*i[2]+parseFloat(T.css(t,e)),o="number"),void(null!=n&&n==n&&("number"!==o||T.cssNumber[s]||(n+="px"),m.clearCloneStyle||""!==n||0!==e.indexOf("background")||(u[e]="inherit"),a&&"set"in a&&void 0===(n=a.set(t,n,r))||(u[e]=n))))}},css:function(t,e,n,r){var i,o,a,s=T.camelCase(e);return e=T.cssProps[s]||(T.cssProps[s]=Dt(t.style,s)),(a=T.cssHooks[e]||T.cssHooks[s])&&"get"in a&&(i=a.get(t,!0,n)),void 0===i&&(i=Ct(t,e,r)),"normal"===i&&e in Nt&&(i=Nt[e]),""===n||n?(o=parseFloat(i),!0===n||T.isNumeric(o)?o||0:i):i}}),T.each(["height","width"],function(t,i){T.cssHooks[i]={get:function(t,e,n){return e?Mt.test(T.css(t,"display"))&&0===t.offsetWidth?T.swap(t,St,function(){return Gt(t,i,n)}):Gt(t,i,n):void 0},set:function(t,e,n){var r=n&&wt(t);return _t(0,e,n?Lt(t,i,n,"border-box"===T.css(t,"boxSizing",!1,r),r):0)}}}),T.cssHooks.marginRight=Tt(m.reliableMarginRight,function(t,e){return e?T.swap(t,{display:"inline-block"},Ct,[t,"marginRight"]):void 0}),T.each({margin:"",padding:"",border:"Width"},function(i,o){T.cssHooks[i+o]={expand:function(t){for(var e=0,n={},r="string"==typeof t?t.split(" "):[t];e<4;e++)n[i+z[e]+o]=r[e]||r[e-2]||r[0];return n}},bt.test(i)||(T.cssHooks[i+o].set=_t)}),T.fn.extend({css:function(t,e){return G(this,function(t,e,n){var r,i,o={},a=0;if(T.isArray(e)){for(r=wt(t),i=e.length;a<i;a++)o[e[a]]=T.css(t,e[a],!1,r);return o}return void 0!==n?T.style(t,e,n):T.css(t,e)},t,e,1<arguments.length)},show:function(){return Ft(this,!0)},hide:function(){return Ft(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each(function(){K(this)?T(this).show():T(this).hide()})}}),((T.Tween=$t).prototype={constructor:$t,init:function(t,e,n,r,i,o){this.elem=t,this.prop=n,this.easing=i||"swing",this.options=e,this.start=this.now=this.cur(),this.end=r,this.unit=o||(T.cssNumber[n]?"":"px")},cur:function(){var t=$t.propHooks[this.prop];return t&&t.get?t.get(this):$t.propHooks._default.get(this)},run:function(t){var e,n=$t.propHooks[this.prop];return this.pos=e=this.options.duration?T.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):$t.propHooks._default.set(this),this}}).init.prototype=$t.prototype,($t.propHooks={_default:{get:function(t){var e;return null==t.elem[t.prop]||t.elem.style&&null!=t.elem.style[t.prop]?(e=T.css(t.elem,t.prop,""))&&"auto"!==e?e:0:t.elem[t.prop]},set:function(t){T.fx.step[t.prop]?T.fx.step[t.prop](t):t.elem.style&&(null!=t.elem.style[T.cssProps[t.prop]]||T.cssHooks[t.prop])?T.style(t.elem,t.prop,t.now+t.unit):t.elem[t.prop]=t.now}}}).scrollTop=$t.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},T.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2}},T.fx=$t.prototype.init,T.fx.step={};var Pt,Rt,It,Vt,jt,qt=/^(?:toggle|show|hide)$/,Ht=new RegExp("^(?:([+-])=|)("+H+")([a-z%]*)$","i"),zt=/queueHooks$/,Kt=[function(e,t,n){var r,i,o,a,s,u,l,c=this,f={},h=e.style,d=e.nodeType&&K(e),p=$.get(e,"fxshow");for(r in n.queue||(null==(s=T._queueHooks(e,"fx")).unqueued&&(s.unqueued=0,u=s.empty.fire,s.empty.fire=function(){s.unqueued||u()}),s.unqueued++,c.always(function(){c.always(function(){s.unqueued--,T.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],l=T.css(e,"display"),"inline"===("none"===l?$.get(e,"olddisplay")||yt(e.nodeName):l)&&"none"===T.css(e,"float")&&(h.display="inline-block")),n.overflow&&(h.overflow="hidden",c.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),t)if(i=t[r],qt.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(d?"hide":"show")){if("show"!==i||!p||void 0===p[r])continue;d=!0}f[r]=p&&p[r]||T.style(e,r)}else l=void 0;if(T.isEmptyObject(f))"inline"===("none"===l?yt(e.nodeName):l)&&(h.display=l);else for(r in p?"hidden"in p&&(d=p.hidden):p=$.access(e,"fxshow",{}),o&&(p.hidden=!d),d?T(e).show():c.done(function(){T(e).hide()}),c.done(function(){var t;for(t in $.remove(e,"fxshow"),f)T.style(e,t,f[t])}),f)a=Wt(d?p[r]:0,r,c),r in p||(p[r]=a.start,d&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}],Ot={"*":[function(t,e){var n=this.createTween(t,e),r=n.cur(),i=Ht.exec(e),o=i&&i[3]||(T.cssNumber[t]?"":"px"),a=(T.cssNumber[t]||"px"!==o&&+r)&&Ht.exec(T.css(n.elem,t)),s=1,u=20;if(a&&a[3]!==o)for(o=o||a[3],i=i||[],a=+r||1;a/=s=s||".5",T.style(n.elem,t,a+o),s!==(s=n.cur()/r)&&1!==s&&--u;);return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};function Qt(){return setTimeout(function(){Pt=void 0}),Pt=T.now()}function Yt(t,e){var n,r=0,i={height:t};for(e=e?1:0;r<4;r+=2-e)i["margin"+(n=z[r])]=i["padding"+n]=t;return e&&(i.opacity=i.width=t),i}function Wt(t,e,n){for(var r,i=(Ot[e]||[]).concat(Ot["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,e,t))return r}function Bt(o,t,e){var n,a,r=0,i=Kt.length,s=T.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var t=Pt||Qt(),e=Math.max(0,l.startTime+l.duration-t),n=1-(e/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,e]),n<1&&i?e:(s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:T.extend({},t),opts:T.extend(!0,{specialEasing:{}},e),originalProperties:t,originalOptions:e,startTime:Pt||Qt(),duration:e.duration,tweens:[],createTween:function(t,e){var n=T.Tween(o,l.opts,t,e,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(n),n},stop:function(t){var e=0,n=t?l.tweens.length:0;if(a)return this;for(a=!0;e<n;e++)l.tweens[e].run(1);return t?s.resolveWith(o,[l,t]):s.rejectWith(o,[l,t]),this}}),c=l.props;for(function(t,e){var n,r,i,o,a;for(n in t)if(i=e[r=T.camelCase(n)],o=t[n],T.isArray(o)&&(i=o[1],o=t[n]=o[0]),n!==r&&(t[r]=o,delete t[n]),(a=T.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete t[r],o)n in t||(t[n]=o[n],e[n]=i);else e[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=Kt[r].call(l,o,c,l.opts))return n;return T.map(c,Wt,l),T.isFunction(l.opts.start)&&l.opts.start.call(o,l),T.fx.timer(T.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}T.Animation=T.extend(Bt,{tweener:function(t,e){T.isFunction(t)?(e=t,t=["*"]):t=t.split(" ");for(var n,r=0,i=t.length;r<i;r++)n=t[r],Ot[n]=Ot[n]||[],Ot[n].unshift(e)},prefilter:function(t,e){e?Kt.unshift(t):Kt.push(t)}}),T.speed=function(t,e,n){var r=t&&"object"==typeof t?T.extend({},t):{complete:n||!n&&e||T.isFunction(t)&&t,duration:t,easing:n&&e||e&&!T.isFunction(e)&&e};return r.duration=T.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in T.fx.speeds?T.fx.speeds[r.duration]:T.fx.speeds._default,(null==r.queue||!0===r.queue)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){T.isFunction(r.old)&&r.old.call(this),r.queue&&T.dequeue(this,r.queue)},r},T.fn.extend({fadeTo:function(t,e,n,r){return this.filter(K).css("opacity",0).show().end().animate({opacity:e},t,n,r)},animate:function(e,t,n,r){var i=T.isEmptyObject(e),o=T.speed(t,n,r),a=function(){var t=Bt(this,T.extend({},e),o);(i||$.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,t,o){var a=function(t){var e=t.stop;delete t.stop,e(o)};return"string"!=typeof i&&(o=t,t=i,i=void 0),t&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var t=!0,e=null!=i&&i+"queueHooks",n=T.timers,r=$.get(this);if(e)r[e]&&r[e].stop&&a(r[e]);else for(e in r)r[e]&&r[e].stop&&zt.test(e)&&a(r[e]);for(e=n.length;e--;)n[e].elem!==this||null!=i&&n[e].queue!==i||(n[e].anim.stop(o),t=!1,n.splice(e,1));(t||!o)&&T.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var t,e=$.get(this),n=e[a+"queue"],r=e[a+"queueHooks"],i=T.timers,o=n?n.length:0;for(e.finish=!0,T.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),t=i.length;t--;)i[t].elem===this&&i[t].queue===a&&(i[t].anim.stop(!0),i.splice(t,1));for(t=0;t<o;t++)n[t]&&n[t].finish&&n[t].finish.call(this);delete e.finish})}}),T.each(["toggle","show","hide"],function(t,r){var i=T.fn[r];T.fn[r]=function(t,e,n){return null==t||"boolean"==typeof t?i.apply(this,arguments):this.animate(Yt(r,!0),t,e,n)}}),T.each({slideDown:Yt("show"),slideUp:Yt("hide"),slideToggle:Yt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(t,r){T.fn[t]=function(t,e,n){return this.animate(r,t,e,n)}}),T.timers=[],T.fx.tick=function(){var t,e=0,n=T.timers;for(Pt=T.now();e<n.length;e++)(t=n[e])()||n[e]!==t||n.splice(e--,1);n.length||T.fx.stop(),Pt=void 0},T.fx.timer=function(t){T.timers.push(t),t()?T.fx.start():T.timers.pop()},T.fx.interval=13,T.fx.start=function(){Rt||(Rt=setInterval(T.fx.tick,T.fx.interval))},T.fx.stop=function(){clearInterval(Rt),Rt=null},T.fx.speeds={slow:600,fast:200,_default:400},T.fn.delay=function(r,t){return r=T.fx&&T.fx.speeds[r]||r,t=t||"fx",this.queue(t,function(t,e){var n=setTimeout(t,r);e.stop=function(){clearTimeout(n)}})},It=y.createElement("input"),Vt=y.createElement("select"),jt=Vt.appendChild(y.createElement("option")),It.type="checkbox",m.checkOn=""!==It.value,m.optSelected=jt.selected,Vt.disabled=!0,m.optDisabled=!jt.disabled,(It=y.createElement("input")).value="t",It.type="radio",m.radioValue="t"===It.value;var Ut,Xt=T.expr.attrHandle;T.fn.extend({attr:function(t,e){return G(this,T.attr,t,e,1<arguments.length)},removeAttr:function(t){return this.each(function(){T.removeAttr(this,t)})}}),T.extend({attr:function(t,e,n){var r,i,o=t.nodeType;if(t&&3!==o&&8!==o&&2!==o)return typeof t.getAttribute===Q?T.prop(t,e,n):(1===o&&T.isXMLDoc(t)||(e=e.toLowerCase(),r=T.attrHooks[e]||(T.expr.match.bool.test(e)?Ut:void 0)),void 0===n?r&&"get"in r&&null!==(i=r.get(t,e))?i:null==(i=T.find.attr(t,e))?void 0:i:null!==n?r&&"set"in r&&void 0!==(i=r.set(t,n,e))?i:(t.setAttribute(e,n+""),n):void T.removeAttr(t,e))},removeAttr:function(t,e){var n,r,i=0,o=e&&e.match(D);if(o&&1===t.nodeType)for(;n=o[i++];)r=T.propFix[n]||n,T.expr.match.bool.test(n)&&(t[r]=!1),t.removeAttribute(n)},attrHooks:{type:{set:function(t,e){if(!m.radioValue&&"radio"===e&&T.nodeName(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}}}),Ut={set:function(t,e,n){return!1===e?T.removeAttr(t,n):t.setAttribute(n,n),n}},T.each(T.expr.match.bool.source.match(/\w+/g),function(t,e){var o=Xt[e]||T.find.attr;Xt[e]=function(t,e,n){var r,i;return n||(i=Xt[e],Xt[e]=r,r=null!=o(t,e,n)?e.toLowerCase():null,Xt[e]=i),r}});var Zt=/^(?:input|select|textarea|button)$/i;T.fn.extend({prop:function(t,e){return G(this,T.prop,t,e,1<arguments.length)},removeProp:function(t){return this.each(function(){delete this[T.propFix[t]||t]})}}),T.extend({propFix:{for:"htmlFor",class:"className"},prop:function(t,e,n){var r,i,o=t.nodeType;if(t&&3!==o&&8!==o&&2!==o)return(1!==o||!T.isXMLDoc(t))&&(e=T.propFix[e]||e,i=T.propHooks[e]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:t[e]=n:i&&"get"in i&&null!==(r=i.get(t,e))?r:t[e]},propHooks:{tabIndex:{get:function(t){return t.hasAttribute("tabindex")||Zt.test(t.nodeName)||t.href?t.tabIndex:-1}}}}),m.optSelected||(T.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null}}),T.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){T.propFix[this.toLowerCase()]=this});var Jt=/[\t\r\n\f]/g;T.fn.extend({addClass:function(e){var t,n,r,i,o,a,s="string"==typeof e&&e,u=0,l=this.length;if(T.isFunction(e))return this.each(function(t){T(this).addClass(e.call(this,t,this.className))});if(s)for(t=(e||"").match(D)||[];u<l;u++)if(r=1===(n=this[u]).nodeType&&(n.className?(" "+n.className+" ").replace(Jt," "):" ")){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");a=T.trim(r),n.className!==a&&(n.className=a)}return this},removeClass:function(e){var t,n,r,i,o,a,s=0===arguments.length||"string"==typeof e&&e,u=0,l=this.length;if(T.isFunction(e))return this.each(function(t){T(this).removeClass(e.call(this,t,this.className))});if(s)for(t=(e||"").match(D)||[];u<l;u++)if(r=1===(n=this[u]).nodeType&&(n.className?(" "+n.className+" ").replace(Jt," "):"")){for(o=0;i=t[o++];)for(;0<=r.indexOf(" "+i+" ");)r=r.replace(" "+i+" "," ");a=e?T.trim(r):"",n.className!==a&&(n.className=a)}return this},toggleClass:function(i,e){var o=typeof i;return"boolean"==typeof e&&"string"===o?e?this.addClass(i):this.removeClass(i):this.each(T.isFunction(i)?function(t){T(this).toggleClass(i.call(this,t,this.className,e),e)}:function(){if("string"===o)for(var t,e=0,n=T(this),r=i.match(D)||[];t=r[e++];)n.hasClass(t)?n.removeClass(t):n.addClass(t);else(o===Q||"boolean"===o)&&(this.className&&$.set(this,"__className__",this.className),this.className=this.className||!1===i?"":$.get(this,"__className__")||"")})},hasClass:function(t){for(var e=" "+t+" ",n=0,r=this.length;n<r;n++)if(1===this[n].nodeType&&0<=(" "+this[n].className+" ").replace(Jt," ").indexOf(e))return!0;return!1}});var te=/\r/g;T.fn.extend({val:function(n){var r,t,i,e=this[0];return arguments.length?(i=T.isFunction(n),this.each(function(t){var e;1===this.nodeType&&(null==(e=i?n.call(this,t,T(this).val()):n)?e="":"number"==typeof e?e+="":T.isArray(e)&&(e=T.map(e,function(t){return null==t?"":t+""})),(r=T.valHooks[this.type]||T.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,e,"value")||(this.value=e))})):e?(r=T.valHooks[e.type]||T.valHooks[e.nodeName.toLowerCase()])&&"get"in r&&void 0!==(t=r.get(e,"value"))?t:"string"==typeof(t=e.value)?t.replace(te,""):null==t?"":t:void 0}}),T.extend({valHooks:{option:{get:function(t){var e=T.find.attr(t,"value");return null!=e?e:T.trim(T.text(t))}},select:{get:function(t){for(var e,n,r=t.options,i=t.selectedIndex,o="select-one"===t.type||i<0,a=o?null:[],s=o?i+1:r.length,u=i<0?s:o?i:0;u<s;u++)if(!(!(n=r[u]).selected&&u!==i||(m.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&T.nodeName(n.parentNode,"optgroup"))){if(e=T(n).val(),o)return e;a.push(e)}return a},set:function(t,e){for(var n,r,i=t.options,o=T.makeArray(e),a=i.length;a--;)((r=i[a]).selected=0<=T.inArray(r.value,o))&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),T.each(["radio","checkbox"],function(){T.valHooks[this]={set:function(t,e){return T.isArray(e)?t.checked=0<=T.inArray(T(t).val(),e):void 0}},m.checkOn||(T.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})}),T.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(t,n){T.fn[n]=function(t,e){return 0<arguments.length?this.on(n,null,t,e):this.trigger(n)}}),T.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)},bind:function(t,e,n){return this.on(t,null,e,n)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,n,r){return this.on(e,t,n,r)},undelegate:function(t,e,n){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",n)}});var ee=T.now(),ne=/\?/;T.parseJSON=function(t){return JSON.parse(t+"")},T.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return(!e||e.getElementsByTagName("parsererror").length)&&T.error("Invalid XML: "+t),e};var re,ie,oe=/#.*$/,ae=/([?&])_=[^&]*/,se=/^(.*?):[ \t]*([^\r\n]*)$/gm,ue=/^(?:GET|HEAD)$/,le=/^\/\//,ce=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,fe={},he={},de="*/".concat("*");try{ie=location.href}catch(t){(ie=y.createElement("a")).href="",ie=ie.href}function pe(o){return function(t,e){"string"!=typeof t&&(e=t,t="*");var n,r=0,i=t.toLowerCase().match(D)||[];if(T.isFunction(e))for(;n=i[r++];)"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(e)):(o[n]=o[n]||[]).push(e)}}function ge(e,i,o,a){var s={},u=e===he;function l(t){var r;return s[t]=!0,T.each(e[t]||[],function(t,e){var n=e(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function ve(t,e){var n,r,i=T.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((i[n]?t:r||(r={}))[n]=e[n]);return r&&T.extend(!0,t,r),t}re=ce.exec(ie.toLowerCase())||[],T.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ie,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(re[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":de,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":T.parseJSON,"text xml":T.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?ve(ve(t,T.ajaxSettings),e):ve(T.ajaxSettings,t)},ajaxPrefilter:pe(fe),ajaxTransport:pe(he),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var c,f,h,n,d,r,p,i,g=T.ajaxSetup({},e),v=g.context||g,m=g.context&&(v.nodeType||v.jquery)?T(v):T.event,y=T.Deferred(),b=T.Callbacks("once memory"),x=g.statusCode||{},o={},a={},w=0,s="canceled",C={readyState:0,getResponseHeader:function(t){var e;if(2===w){if(!n)for(n={};e=se.exec(h);)n[e[1].toLowerCase()]=e[2];e=n[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return 2===w?h:null},setRequestHeader:function(t,e){var n=t.toLowerCase();return w||(t=a[n]=a[n]||t,o[t]=e),this},overrideMimeType:function(t){return w||(g.mimeType=t),this},statusCode:function(t){var e;if(t)if(w<2)for(e in t)x[e]=[x[e],t[e]];else C.always(t[C.status]);return this},abort:function(t){var e=t||s;return c&&c.abort(e),u(0,e),this}};if(y.promise(C).complete=b.add,C.success=C.done,C.error=C.fail,g.url=((t||g.url||ie)+"").replace(oe,"").replace(le,re[1]+"//"),g.type=e.method||e.type||g.method||g.type,g.dataTypes=T.trim(g.dataType||"*").toLowerCase().match(D)||[""],null==g.crossDomain&&(r=ce.exec(g.url.toLowerCase()),g.crossDomain=!(!r||r[1]===re[1]&&r[2]===re[2]&&(r[3]||("http:"===r[1]?"80":"443"))===(re[3]||("http:"===re[1]?"80":"443")))),g.data&&g.processData&&"string"!=typeof g.data&&(g.data=T.param(g.data,g.traditional)),ge(fe,g,e,C),2===w)return C;for(i in(p=g.global)&&0==T.active++&&T.event.trigger("ajaxStart"),g.type=g.type.toUpperCase(),g.hasContent=!ue.test(g.type),f=g.url,g.hasContent||(g.data&&(f=g.url+=(ne.test(f)?"&":"?")+g.data,delete g.data),!1===g.cache&&(g.url=ae.test(f)?f.replace(ae,"$1_="+ee++):f+(ne.test(f)?"&":"?")+"_="+ee++)),g.ifModified&&(T.lastModified[f]&&C.setRequestHeader("If-Modified-Since",T.lastModified[f]),T.etag[f]&&C.setRequestHeader("If-None-Match",T.etag[f])),(g.data&&g.hasContent&&!1!==g.contentType||e.contentType)&&C.setRequestHeader("Content-Type",g.contentType),C.setRequestHeader("Accept",g.dataTypes[0]&&g.accepts[g.dataTypes[0]]?g.accepts[g.dataTypes[0]]+("*"!==g.dataTypes[0]?", "+de+"; q=0.01":""):g.accepts["*"]),g.headers)C.setRequestHeader(i,g.headers[i]);if(g.beforeSend&&(!1===g.beforeSend.call(v,C,g)||2===w))return C.abort();for(i in s="abort",{success:1,error:1,complete:1})C[i](g[i]);if(c=ge(he,g,e,C)){C.readyState=1,p&&m.trigger("ajaxSend",[C,g]),g.async&&0<g.timeout&&(d=setTimeout(function(){C.abort("timeout")},g.timeout));try{w=1,c.send(o,u)}catch(t){if(!(w<2))throw t;u(-1,t)}}else u(-1,"No Transport");function u(t,e,n,r){var i,o,a,s,u,l=e;2!==w&&(w=2,d&&clearTimeout(d),c=void 0,h=r||"",C.readyState=0<t?4:0,i=200<=t&&t<300||304===t,n&&(s=function(t,e,n){for(var r,i,o,a,s=t.contents,u=t.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=t.mimeType||e.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||t.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}return o?(o!==u[0]&&u.unshift(o),n[o]):void 0}(g,C,n)),s=function(t,e,n,r){var i,o,a,s,u,l={},c=t.dataTypes.slice();if(c[1])for(a in t.converters)l[a.toLowerCase()]=t.converters[a];for(o=c.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!u&&r&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&t.throws)e=a(e);else try{e=a(e)}catch(t){return{state:"parsererror",error:a?t:"No conversion from "+u+" to "+o}}}return{state:"success",data:e}}(g,s,C,i),i?(g.ifModified&&((u=C.getResponseHeader("Last-Modified"))&&(T.lastModified[f]=u),(u=C.getResponseHeader("etag"))&&(T.etag[f]=u)),204===t||"HEAD"===g.type?l="nocontent":304===t?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,(t||!l)&&(l="error",t<0&&(t=0))),C.status=t,C.statusText=(e||l)+"",i?y.resolveWith(v,[o,l,C]):y.rejectWith(v,[C,l,a]),C.statusCode(x),x=void 0,p&&m.trigger(i?"ajaxSuccess":"ajaxError",[C,g,i?o:a]),b.fireWith(v,[C,l]),p&&(m.trigger("ajaxComplete",[C,g]),--T.active||T.event.trigger("ajaxStop")))}return C},getJSON:function(t,e,n){return T.get(t,e,n,"json")},getScript:function(t,e){return T.get(t,void 0,e,"script")}}),T.each(["get","post"],function(t,i){T[i]=function(t,e,n,r){return T.isFunction(e)&&(r=r||n,n=e,e=void 0),T.ajax({url:t,type:i,dataType:r,data:e,success:n})}}),T.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(t,e){T.fn[e]=function(t){return this.on(e,t)}}),T._evalUrl=function(t){return T.ajax({url:t,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},T.fn.extend({wrapAll:function(e){var t;return T.isFunction(e)?this.each(function(t){T(this).wrapAll(e.call(this,t))}):(this[0]&&(t=T(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this)},wrapInner:function(n){return this.each(T.isFunction(n)?function(t){T(this).wrapInner(n.call(this,t))}:function(){var t=T(this),e=t.contents();e.length?e.wrapAll(n):t.append(n)})},wrap:function(e){var n=T.isFunction(e);return this.each(function(t){T(this).wrapAll(n?e.call(this,t):e)})},unwrap:function(){return this.parent().each(function(){T.nodeName(this,"body")||T(this).replaceWith(this.childNodes)}).end()}}),T.expr.filters.hidden=function(t){return t.offsetWidth<=0&&t.offsetHeight<=0},T.expr.filters.visible=function(t){return!T.expr.filters.hidden(t)};var me=/%20/g,ye=/\[\]$/,be=/\r?\n/g,xe=/^(?:submit|button|image|reset|file)$/i,we=/^(?:input|select|textarea|keygen)/i;function Ce(n,t,r,i){var e;if(T.isArray(t))T.each(t,function(t,e){r||ye.test(n)?i(n,e):Ce(n+"["+("object"==typeof e?t:"")+"]",e,r,i)});else if(r||"object"!==T.type(t))i(n,t);else for(e in t)Ce(n+"["+e+"]",t[e],r,i)}T.param=function(t,e){var n,r=[],i=function(t,e){e=T.isFunction(e)?e():null==e?"":e,r[r.length]=encodeURIComponent(t)+"="+encodeURIComponent(e)};if(void 0===e&&(e=T.ajaxSettings&&T.ajaxSettings.traditional),T.isArray(t)||t.jquery&&!T.isPlainObject(t))T.each(t,function(){i(this.name,this.value)});else for(n in t)Ce(n,t[n],e,i);return r.join("&").replace(me,"+")},T.fn.extend({serialize:function(){return T.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=T.prop(this,"elements");return t?T.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!T(this).is(":disabled")&&we.test(this.nodeName)&&!xe.test(t)&&(this.checked||!O.test(t))}).map(function(t,e){var n=T(this).val();return null==n?null:T.isArray(n)?T.map(n,function(t){return{name:e.name,value:t.replace(be,"\r\n")}}):{name:e.name,value:n.replace(be,"\r\n")}}).get()}}),T.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(t){}};var Te=0,Me={},Ae={0:200,1223:204},Ee=T.ajaxSettings.xhr();p.ActiveXObject&&T(p).on("unload",function(){for(var t in Me)Me[t]()}),m.cors=!!Ee&&"withCredentials"in Ee,m.ajax=Ee=!!Ee,T.ajaxTransport(function(o){var a;return m.cors||Ee&&!o.crossDomain?{send:function(t,e){var n,r=o.xhr(),i=++Te;if(r.open(o.type,o.url,o.async,o.username,o.password),o.xhrFields)for(n in o.xhrFields)r[n]=o.xhrFields[n];for(n in o.mimeType&&r.overrideMimeType&&r.overrideMimeType(o.mimeType),o.crossDomain||t["X-Requested-With"]||(t["X-Requested-With"]="XMLHttpRequest"),t)r.setRequestHeader(n,t[n]);a=function(t){return function(){a&&(delete Me[i],a=r.onload=r.onerror=null,"abort"===t?r.abort():"error"===t?e(r.status,r.statusText):e(Ae[r.status]||r.status,r.statusText,"string"==typeof r.responseText?{text:r.responseText}:void 0,r.getAllResponseHeaders()))}},r.onload=a(),r.onerror=a("error"),a=Me[i]=a("abort");try{r.send(o.hasContent&&o.data||null)}catch(t){if(a)throw t}},abort:function(){a&&a()}}:void 0}),T.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(t){return T.globalEval(t),t}}}),T.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),T.ajaxTransport("script",function(n){var r,i;if(n.crossDomain)return{send:function(t,e){r=T("<script>").prop({async:!0,charset:n.scriptCharset,src:n.url}).on("load error",i=function(t){r.remove(),i=null,t&&e("error"===t.type?404:200,t.type)}),y.head.appendChild(r[0])},abort:function(){i&&i()}}});var Se=[],Ne=/(=)\?(?=&|$)|\?\?/;T.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=Se.pop()||T.expando+"_"+ee++;return this[t]=!0,t}}),T.ajaxPrefilter("json jsonp",function(t,e,n){var r,i,o,a=!1!==t.jsonp&&(Ne.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ne.test(t.data)&&"data");return a||"jsonp"===t.dataTypes[0]?(r=t.jsonpCallback=T.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,a?t[a]=t[a].replace(Ne,"$1"+r):!1!==t.jsonp&&(t.url+=(ne.test(t.url)?"&":"?")+t.jsonp+"="+r),t.converters["script json"]=function(){return o||T.error(r+" was not called"),o[0]},t.dataTypes[0]="json",i=p[r],p[r]=function(){o=arguments},n.always(function(){p[r]=i,t[r]&&(t.jsonpCallback=e.jsonpCallback,Se.push(r)),o&&T.isFunction(i)&&i(o[0]),o=i=void 0}),"script"):void 0}),T.parseHTML=function(t,e,n){if(!t||"string"!=typeof t)return null;"boolean"==typeof e&&(n=e,e=!1),e=e||y;var r=x.exec(t),i=!n&&[];return r?[e.createElement(r[1])]:(r=T.buildFragment([t],e,i),i&&i.length&&T(i).remove(),T.merge([],r.childNodes))};var ke=T.fn.load;T.fn.load=function(t,e,n){if("string"!=typeof t&&ke)return ke.apply(this,arguments);var r,i,o,a=this,s=t.indexOf(" ");return 0<=s&&(r=T.trim(t.slice(s)),t=t.slice(0,s)),T.isFunction(e)?(n=e,e=void 0):e&&"object"==typeof e&&(i="POST"),0<a.length&&T.ajax({url:t,type:i,dataType:"html",data:e}).done(function(t){o=arguments,a.html(r?T("<div>").append(T.parseHTML(t)).find(r):t)}).complete(n&&function(t,e){a.each(n,o||[t.responseText,e,t])}),this},T.expr.filters.animated=function(e){return T.grep(T.timers,function(t){return e===t.elem}).length};var De=p.document.documentElement;function _e(t){return T.isWindow(t)?t:9===t.nodeType&&t.defaultView}T.offset={setOffset:function(t,e,n){var r,i,o,a,s,u,l=T.css(t,"position"),c=T(t),f={};"static"===l&&(t.style.position="relative"),s=c.offset(),o=T.css(t,"top"),u=T.css(t,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),T.isFunction(e)&&(e=e.call(t,n,s)),null!=e.top&&(f.top=e.top-s.top+a),null!=e.left&&(f.left=e.left-s.left+i),"using"in e?e.using.call(t,f):c.css(f)}},T.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){T.offset.setOffset(this,e,t)});var t,n,r=this[0],i={top:0,left:0},o=r&&r.ownerDocument;return o?(t=o.documentElement,T.contains(t,r)?(typeof r.getBoundingClientRect!==Q&&(i=r.getBoundingClientRect()),n=_e(o),{top:i.top+n.pageYOffset-t.clientTop,left:i.left+n.pageXOffset-t.clientLeft}):i):void 0},position:function(){if(this[0]){var t,e,n=this[0],r={top:0,left:0};return"fixed"===T.css(n,"position")?e=n.getBoundingClientRect():(t=this.offsetParent(),e=this.offset(),T.nodeName(t[0],"html")||(r=t.offset()),r.top+=T.css(t[0],"borderTopWidth",!0),r.left+=T.css(t[0],"borderLeftWidth",!0)),{top:e.top-r.top-T.css(n,"marginTop",!0),left:e.left-r.left-T.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent||De;t&&!T.nodeName(t,"html")&&"static"===T.css(t,"position");)t=t.offsetParent;return t||De})}}),T.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,i){var o="pageYOffset"===i;T.fn[e]=function(t){return G(this,function(t,e,n){var r=_e(t);return void 0===n?r?r[i]:t[e]:void(r?r.scrollTo(o?p.pageXOffset:n,o?n:p.pageYOffset):t[e]=n)},e,t,arguments.length,null)}}),T.each(["top","left"],function(t,n){T.cssHooks[n]=Tt(m.pixelPosition,function(t,e){return e?(e=Ct(t,n),xt.test(e)?T(t).position()[n]+"px":e):void 0})}),T.each({Height:"height",Width:"width"},function(o,a){T.each({padding:"inner"+o,content:a,"":"outer"+o},function(r,t){T.fn[t]=function(t,e){var n=arguments.length&&(r||"boolean"!=typeof t),i=r||(!0===t||!0===e?"margin":"border");return G(this,function(t,e,n){var r;return T.isWindow(t)?t.document.documentElement["client"+o]:9===t.nodeType?(r=t.documentElement,Math.max(t.body["scroll"+o],r["scroll"+o],t.body["offset"+o],r["offset"+o],r["client"+o])):void 0===n?T.css(t,e,i):T.style(t,e,n,i)},a,n?t:void 0,n,null)}})}),T.fn.size=function(){return this.length},T.fn.andSelf=T.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return T});var Le=p.jQuery,Ge=p.$;return T.noConflict=function(t){return p.$===T&&(p.$=Ge),t&&p.jQuery===T&&(p.jQuery=Le),T},typeof t===Q&&(p.jQuery=p.$=T),T}),"undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");var GV;!function(r){"use strict";r.fn.emulateTransitionEnd=function(t){var e=!1,n=this;r(this).one(r.support.transition.end,function(){e=!0});return setTimeout(function(){e||r(n).trigger(r.support.transition.end)},t),this},r(function(){r.support.transition=function(){var t=document.createElement("bootstrap"),e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var n in e)if(void 0!==t.style[n])return{end:e[n]};return!1}()})}(jQuery),function(o){"use strict";var e='[data-dismiss="alert"]',r=function(t){o(t).on("click",e,this.close)};r.prototype.close=function(t){function e(){i.trigger("closed.bs.alert").remove()}var n=o(this),r=n.attr("data-target");r||(r=(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]*$)/,""));var i=o(r);t&&t.preventDefault(),i.length||(i=n.hasClass("alert")?n:n.parent()),i.trigger(t=o.Event("close.bs.alert")),t.isDefaultPrevented()||(i.removeClass("in"),o.support.transition&&i.hasClass("fade")?i.one(o.support.transition.end,e).emulateTransitionEnd(150):e())};var t=o.fn.alert;o.fn.alert=function(n){return this.each(function(){var t=o(this),e=t.data("bs.alert");e||t.data("bs.alert",e=new r(this)),"string"==typeof n&&e[n].call(t)})},o.fn.alert.Constructor=r,o.fn.alert.noConflict=function(){return o.fn.alert=t,this},o(document).on("click.bs.alert.data-api",e,r.prototype.close)}(jQuery),function(o){"use strict";var i=function(t,e){this.$element=o(t),this.options=o.extend({},i.DEFAULTS,e),this.isLoading=!1};i.DEFAULTS={loadingText:"loading..."},i.prototype.setState=function(t){var e="disabled",n=this.$element,r=n.is("input")?"val":"html",i=n.data();t+="Text",i.resetText||n.data("resetText",n[r]()),n[r](i[t]||this.options[t]),setTimeout(o.proxy(function(){"loadingText"==t?(this.isLoading=!0,n.addClass(e).attr(e,e)):this.isLoading&&(this.isLoading=!1,n.removeClass(e).removeAttr(e))},this),0)},i.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle="buttons"]');if(e.length){var n=this.$element.find("input");"radio"==n.prop("type")&&(n.prop("checked")&&this.$element.hasClass("active")?t=!1:e.find(".active").removeClass("active")),t&&n.prop("checked",!this.$element.hasClass("active")).trigger("change")}t&&this.$element.toggleClass("active")};var t=o.fn.button;o.fn.button=function(r){return this.each(function(){var t=o(this),e=t.data("bs.button"),n="object"==typeof r&&r;e||t.data("bs.button",e=new i(this,n)),"toggle"==r?e.toggle():r&&e.setState(r)})},o.fn.button.Constructor=i,o.fn.button.noConflict=function(){return o.fn.button=t,this},o(document).on("click.bs.button.data-api","[data-toggle^=button]",function(t){var e=o(t.target);e.hasClass("btn")||(e=e.closest(".btn")),e.button("toggle"),t.preventDefault()})}(jQuery),function(l){"use strict";var o=function(t,e){this.$element=l(t),this.$indicators=this.$element.find(".carousel-indicators"),this.options=e,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",l.proxy(this.pause,this)).on("mouseleave",l.proxy(this.cycle,this))};o.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},o.prototype.cycle=function(t){return t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(l.proxy(this.next,this),this.options.interval)),this},o.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},o.prototype.to=function(t){var e=this,n=this.getActiveIndex();return t>this.$items.length-1||t<0?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){e.to(t)}):n==t?this.pause().cycle():this.slide(n<t?"next":"prev",l(this.$items[t]))},o.prototype.pause=function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&l.support.transition&&(this.$element.trigger(l.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},o.prototype.next=function(){return this.sliding?void 0:this.slide("next")},o.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},o.prototype.slide=function(t,e){var n=this.$element.find(".item.active"),r=e||n[t](),i=this.interval,o="next"==t?"left":"right",a="next"==t?"first":"last",s=this;if(!r.length){if(!this.options.wrap)return;r=this.$element.find(".item")[a]()}if(r.hasClass("active"))return this.sliding=!1;var u=l.Event("slide.bs.carousel",{relatedTarget:r[0],direction:o});return this.$element.trigger(u),u.isDefaultPrevented()?void 0:(this.sliding=!0,i&&this.pause(),this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid.bs.carousel",function(){var t=l(s.$indicators.children()[s.getActiveIndex()]);t&&t.addClass("active")})),l.support.transition&&this.$element.hasClass("slide")?(r.addClass(t),r[0].offsetWidth,n.addClass(o),r.addClass(o),n.one(l.support.transition.end,function(){r.removeClass([t,o].join(" ")).addClass("active"),n.removeClass(["active",o].join(" ")),s.sliding=!1,setTimeout(function(){s.$element.trigger("slid.bs.carousel")},0)}).emulateTransitionEnd(1e3*n.css("transition-duration").slice(0,-1))):(n.removeClass("active"),r.addClass("active"),this.sliding=!1,this.$element.trigger("slid.bs.carousel")),i&&this.cycle(),this)};var t=l.fn.carousel;l.fn.carousel=function(i){return this.each(function(){var t=l(this),e=t.data("bs.carousel"),n=l.extend({},o.DEFAULTS,t.data(),"object"==typeof i&&i),r="string"==typeof i?i:n.slide;e||t.data("bs.carousel",e=new o(this,n)),"number"==typeof i?e.to(i):r?e[r]():n.interval&&e.pause().cycle()})},l.fn.carousel.Constructor=o,l.fn.carousel.noConflict=function(){return l.fn.carousel=t,this},l(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(t){var e,n=l(this),r=l(n.attr("data-target")||(e=n.attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")),i=l.extend({},r.data(),n.data()),o=n.attr("data-slide-to");o&&(i.interval=!1),r.carousel(i),(o=n.attr("data-slide-to"))&&r.data("bs.carousel").to(o),t.preventDefault()}),l(window).on("load",function(){l('[data-ride="carousel"]').each(function(){var t=l(this);t.carousel(t.data())})})}(jQuery),function(l){"use strict";var i=function(t,e){this.$element=l(t),this.options=l.extend({},i.DEFAULTS,e),this.transitioning=null,this.options.parent&&(this.$parent=l(this.options.parent)),this.options.toggle&&this.toggle()};i.DEFAULTS={toggle:!0},i.prototype.dimension=function(){return this.$element.hasClass("width")?"width":"height"},i.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var t=l.Event("show.bs.collapse");if(this.$element.trigger(t),!t.isDefaultPrevented()){var e=this.$parent&&this.$parent.find("> .panel > .in");if(e&&e.length){var n=e.data("bs.collapse");if(n&&n.transitioning)return;e.collapse("hide"),n||e.data("bs.collapse",null)}var r=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[r](0),this.transitioning=1;var i=function(){this.$element.removeClass("collapsing").addClass("collapse in")[r]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!l.support.transition)return i.call(this);var o=l.camelCase(["scroll",r].join("-"));this.$element.one(l.support.transition.end,l.proxy(i,this)).emulateTransitionEnd(350)[r](this.$element[0][o])}}},i.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var t=l.Event("hide.bs.collapse");if(this.$element.trigger(t),!t.isDefaultPrevented()){var e=this.dimension();this.$element[e](this.$element[e]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var n=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return l.support.transition?void this.$element[e](0).one(l.support.transition.end,l.proxy(n,this)).emulateTransitionEnd(350):n.call(this)}}},i.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var t=l.fn.collapse;l.fn.collapse=function(r){return this.each(function(){var t=l(this),e=t.data("bs.collapse"),n=l.extend({},i.DEFAULTS,t.data(),"object"==typeof r&&r);!e&&n.toggle&&"show"==r&&(r=!r),e||t.data("bs.collapse",e=new i(this,n)),"string"==typeof r&&e[r]()})},l.fn.collapse.Constructor=i,l.fn.collapse.noConflict=function(){return l.fn.collapse=t,this},l(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(t){var e,n=l(this),r=n.attr("data-target")||t.preventDefault()||(e=n.attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,""),i=l(r),o=i.data("bs.collapse"),a=o?"toggle":n.data(),s=n.attr("data-parent"),u=s&&l(s);o&&o.transitioning||(u&&u.find('[data-toggle=collapse][data-parent="'+s+'"]').not(n).addClass("collapsed"),n[i.hasClass("in")?"addClass":"removeClass"]("collapsed")),i.collapse(a)})}(jQuery),function(s){"use strict";function o(n){s(t).remove(),s(l).each(function(){var t=u(s(this)),e={relatedTarget:this};t.hasClass("open")&&(t.trigger(n=s.Event("hide.bs.dropdown",e)),n.isDefaultPrevented()||t.removeClass("open").trigger("hidden.bs.dropdown",e))})}function u(t){var e=t.attr("data-target");e||(e=(e=t.attr("href"))&&/#[A-Za-z]/.test(e)&&e.replace(/.*(?=#[^\s]*$)/,""));var n=e&&s(e);return n&&n.length?n:t.parent()}var t=".dropdown-backdrop",l="[data-toggle=dropdown]",r=function(t){s(t).on("click.bs.dropdown",this.toggle)};r.prototype.toggle=function(t){var e=s(this);if(!e.is(".disabled, :disabled")){var n=u(e),r=n.hasClass("open");if(o(),!r){"ontouchstart"in document.documentElement&&!n.closest(".navbar-nav").length&&s('<div class="dropdown-backdrop"/>').insertAfter(s(this)).on("click",o);var i={relatedTarget:this};if(n.trigger(t=s.Event("show.bs.dropdown",i)),t.isDefaultPrevented())return;n.toggleClass("open").trigger("shown.bs.dropdown",i),e.focus()}return!1}},r.prototype.keydown=function(t){if(/(38|40|27)/.test(t.keyCode)){var e=s(this);if(t.preventDefault(),t.stopPropagation(),!e.is(".disabled, :disabled")){var n=u(e),r=n.hasClass("open");if(!r||r&&27==t.keyCode)return 27==t.which&&n.find(l).focus(),e.click();var i=" li:not(.divider):visible a",o=n.find("[role=menu]"+i+", [role=listbox]"+i);if(o.length){var a=o.index(o.filter(":focus"));38==t.keyCode&&0<a&&a--,40==t.keyCode&&a<o.length-1&&a++,~a||(a=0),o.eq(a).focus()}}}};var e=s.fn.dropdown;s.fn.dropdown=function(n){return this.each(function(){var t=s(this),e=t.data("bs.dropdown");e||t.data("bs.dropdown",e=new r(this)),"string"==typeof n&&e[n].call(t)})},s.fn.dropdown.Constructor=r,s.fn.dropdown.noConflict=function(){return s.fn.dropdown=e,this},s(document).on("click.bs.dropdown.data-api",o).on("click.bs.dropdown.data-api",".dropdown form",function(t){t.stopPropagation()}).on("click.bs.dropdown.data-api",l,r.prototype.toggle).on("keydown.bs.dropdown.data-api",l+", [role=menu], [role=listbox]",r.prototype.keydown)}(jQuery),function(o){"use strict";var a=function(t,e){this.options=e,this.$element=o(t),this.$backdrop=this.isShown=null,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,o.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};a.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},a.prototype.toggle=function(t){return this[this.isShown?"hide":"show"](t)},a.prototype.show=function(n){var r=this,t=o.Event("show.bs.modal",{relatedTarget:n});this.$element.trigger(t),this.isShown||t.isDefaultPrevented()||(this.isShown=!0,this.escape(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',o.proxy(this.hide,this)),this.backdrop(function(){var t=o.support.transition&&r.$element.hasClass("fade");r.$element.parent().length||r.$element.appendTo(document.body),r.$element.show().scrollTop(0),t&&r.$element[0].offsetWidth,r.$element.addClass("in").attr("aria-hidden",!1),r.enforceFocus();var e=o.Event("shown.bs.modal",{relatedTarget:n});t?r.$element.find(".modal-dialog").one(o.support.transition.end,function(){r.$element.focus().trigger(e)}).emulateTransitionEnd(300):r.$element.focus().trigger(e)}))},a.prototype.hide=function(t){t&&t.preventDefault(),t=o.Event("hide.bs.modal"),this.$element.trigger(t),this.isShown&&!t.isDefaultPrevented()&&(this.isShown=!1,this.escape(),o(document).off("focusin.bs.modal"),this.$element.removeClass("in").attr("aria-hidden",!0).off("click.dismiss.bs.modal"),o.support.transition&&this.$element.hasClass("fade")?this.$element.one(o.support.transition.end,o.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal())},a.prototype.enforceFocus=function(){o(document).off("focusin.bs.modal").on("focusin.bs.modal",o.proxy(function(t){this.$element[0]===t.target||this.$element.has(t.target).length||this.$element.focus()},this))},a.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",o.proxy(function(t){27==t.which&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},a.prototype.hideModal=function(){var t=this;this.$element.hide(),this.backdrop(function(){t.removeBackdrop(),t.$element.trigger("hidden.bs.modal")})},a.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},a.prototype.backdrop=function(t){var e=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var n=o.support.transition&&e;if(this.$backdrop=o('<div class="modal-backdrop '+e+'" />').appendTo(document.body),this.$element.on("click.dismiss.bs.modal",o.proxy(function(t){t.target===t.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus.call(this.$element[0]):this.hide.call(this))},this)),n&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!t)return;n?this.$backdrop.one(o.support.transition.end,t).emulateTransitionEnd(150):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),o.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(o.support.transition.end,t).emulateTransitionEnd(150):t()):t&&t()};var t=o.fn.modal;o.fn.modal=function(r,i){return this.each(function(){var t=o(this),e=t.data("bs.modal"),n=o.extend({},a.DEFAULTS,t.data(),"object"==typeof r&&r);e||t.data("bs.modal",e=new a(this,n)),"string"==typeof r?e[r](i):n.show&&e.show(i)})},o.fn.modal.Constructor=a,o.fn.modal.noConflict=function(){return o.fn.modal=t,this},o(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(t){var e=o(this),n=e.attr("href"),r=o(e.attr("data-target")||n&&n.replace(/.*(?=#[^\s]+$)/,"")),i=r.data("bs.modal")?"toggle":o.extend({remote:!/#/.test(n)&&n},r.data(),e.data());e.is("a")&&t.preventDefault(),r.modal(i,this).one("hide",function(){e.is(":visible")&&e.focus()})}),o(document).on("show.bs.modal",".modal",function(){o(document.body).addClass("modal-open")}).on("hidden.bs.modal",".modal",function(){o(document.body).removeClass("modal-open")})}(jQuery),function(m){"use strict";var i=function(t,e){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",t,e)};i.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},i.prototype.init=function(t,e,n){this.enabled=!0,this.type=t,this.$element=m(e),this.options=this.getOptions(n);for(var r=this.options.trigger.split(" "),i=r.length;i--;){var o=r[i];if("click"==o)this.$element.on("click."+this.type,this.options.selector,m.proxy(this.toggle,this));else if("manual"!=o){var a="hover"==o?"mouseenter":"focusin",s="hover"==o?"mouseleave":"focusout";this.$element.on(a+"."+this.type,this.options.selector,m.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,m.proxy(this.leave,this))}}this.options.selector?this._options=m.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},i.prototype.getDefaults=function(){return i.DEFAULTS},i.prototype.getOptions=function(t){return(t=m.extend({},this.getDefaults(),this.$element.data(),t)).delay&&"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),t},i.prototype.getDelegateOptions=function(){var n={},r=this.getDefaults();return this._options&&m.each(this._options,function(t,e){r[t]!=e&&(n[t]=e)}),n},i.prototype.enter=function(t){var e=t instanceof this.constructor?t:m(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(e.timeout),e.hoverState="in",e.options.delay&&e.options.delay.show?void(e.timeout=setTimeout(function(){"in"==e.hoverState&&e.show()},e.options.delay.show)):e.show()},i.prototype.leave=function(t){var e=t instanceof this.constructor?t:m(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(e.timeout),e.hoverState="out",e.options.delay&&e.options.delay.hide?void(e.timeout=setTimeout(function(){"out"==e.hoverState&&e.hide()},e.options.delay.hide)):e.hide()},i.prototype.show=function(){var t=m.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){if(this.$element.trigger(t),t.isDefaultPrevented())return;var e=this,n=this.tip();this.setContent(),this.options.animation&&n.addClass("fade");var r="function"==typeof this.options.placement?this.options.placement.call(this,n[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,o=i.test(r);o&&(r=r.replace(i,"")||"top"),n.detach().css({top:0,left:0,display:"block"}).addClass(r),this.options.container?n.appendTo(this.options.container):n.insertAfter(this.$element);var a=this.getPosition(),s=n[0].offsetWidth,u=n[0].offsetHeight;if(o){var l=this.$element.parent(),c=r,f=document.documentElement.scrollTop||document.body.scrollTop,h="body"==this.options.container?window.innerWidth:l.outerWidth(),d="body"==this.options.container?window.innerHeight:l.outerHeight(),p="body"==this.options.container?0:l.offset().left;r="bottom"==r&&a.top+a.height+u-f>d?"top":"top"==r&&a.top-f-u<0?"bottom":"right"==r&&a.right+s>h?"left":"left"==r&&a.left-s<p?"right":r,n.removeClass(c).addClass(r)}var g=this.getCalculatedOffset(r,a,s,u);this.applyPlacement(g,r),this.hoverState=null;var v=function(){e.$element.trigger("shown.bs."+e.type)};m.support.transition&&this.$tip.hasClass("fade")?n.one(m.support.transition.end,v).emulateTransitionEnd(150):v()}},i.prototype.applyPlacement=function(t,e){var n,r=this.tip(),i=r[0].offsetWidth,o=r[0].offsetHeight,a=parseInt(r.css("margin-top"),10),s=parseInt(r.css("margin-left"),10);isNaN(a)&&(a=0),isNaN(s)&&(s=0),t.top=t.top+a,t.left=t.left+s,m.offset.setOffset(r[0],m.extend({using:function(t){r.css({top:Math.round(t.top),left:Math.round(t.left)})}},t),0),r.addClass("in");var u=r[0].offsetWidth,l=r[0].offsetHeight;if("top"==e&&l!=o&&(n=!0,t.top=t.top+o-l),/bottom|top/.test(e)){var c=0;t.left<0&&(c=-2*t.left,t.left=0,r.offset(t),u=r[0].offsetWidth,l=r[0].offsetHeight),this.replaceArrow(c-i+u,u,"left")}else this.replaceArrow(l-o,l,"top");n&&r.offset(t)},i.prototype.replaceArrow=function(t,e,n){this.arrow().css(n,t?50*(1-t/e)+"%":"")},i.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},i.prototype.hide=function(){function t(){"in"!=e.hoverState&&n.detach(),e.$element.trigger("hidden.bs."+e.type)}var e=this,n=this.tip(),r=m.Event("hide.bs."+this.type);return this.$element.trigger(r),r.isDefaultPrevented()?void 0:(n.removeClass("in"),m.support.transition&&this.$tip.hasClass("fade")?n.one(m.support.transition.end,t).emulateTransitionEnd(150):t(),this.hoverState=null,this)},i.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},i.prototype.hasContent=function(){return this.getTitle()},i.prototype.getPosition=function(){var t=this.$element[0];return m.extend({},"function"==typeof t.getBoundingClientRect?t.getBoundingClientRect():{width:t.offsetWidth,height:t.offsetHeight},this.$element.offset())},i.prototype.getCalculatedOffset=function(t,e,n,r){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-n/2}:"top"==t?{top:e.top-r,left:e.left+e.width/2-n/2}:"left"==t?{top:e.top+e.height/2-r/2,left:e.left-n}:{top:e.top+e.height/2-r/2,left:e.left+e.width}},i.prototype.getTitle=function(){var t=this.$element,e=this.options;return t.attr("data-original-title")||("function"==typeof e.title?e.title.call(t[0]):e.title)},i.prototype.tip=function(){return this.$tip=this.$tip||m(this.options.template)},i.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},i.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},i.prototype.enable=function(){this.enabled=!0},i.prototype.disable=function(){this.enabled=!1},i.prototype.toggleEnabled=function(){this.enabled=!this.enabled},i.prototype.toggle=function(t){var e=t?m(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;e.tip().hasClass("in")?e.leave(e):e.enter(e)},i.prototype.destroy=function(){clearTimeout(this.timeout),this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var t=m.fn.tooltip;m.fn.tooltip=function(r){return this.each(function(){var t=m(this),e=t.data("bs.tooltip"),n="object"==typeof r&&r;(e||"destroy"!=r)&&(e||t.data("bs.tooltip",e=new i(this,n)),"string"==typeof r&&e[r]())})},m.fn.tooltip.Constructor=i,m.fn.tooltip.noConflict=function(){return m.fn.tooltip=t,this}}(jQuery),function(i){"use strict";var o=function(t,e){this.init("popover",t,e)};if(!i.fn.tooltip)throw new Error("Popover requires tooltip.js");o.DEFAULTS=i.extend({},i.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),((o.prototype=i.extend({},i.fn.tooltip.Constructor.prototype)).constructor=o).prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),n=this.getContent();t.find(".popover-title")[this.options.html?"html":"text"](e),t.find(".popover-content")[this.options.html?"string"==typeof n?"html":"append":"text"](n),t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},o.prototype.hasContent=function(){return this.getTitle()||this.getContent()},o.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},o.prototype.tip=function(){return this.$tip||(this.$tip=i(this.options.template)),this.$tip};var t=i.fn.popover;i.fn.popover=function(r){return this.each(function(){var t=i(this),e=t.data("bs.popover"),n="object"==typeof r&&r;(e||"destroy"!=r)&&(e||t.data("bs.popover",e=new o(this,n)),"string"==typeof r&&e[r]())})},i.fn.popover.Constructor=o,i.fn.popover.noConflict=function(){return i.fn.popover=t,this}}(jQuery),function(o){"use strict";function i(t,e){var n,r=o.proxy(this.process,this);this.$element=o(o(t).is("body")?window:t),this.$body=o("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",r),this.options=o.extend({},i.DEFAULTS,e),this.selector=(this.options.target||(n=o(t).attr("href"))&&n.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=o([]),this.targets=o([]),this.activeTarget=null,this.refresh(),this.process()}i.DEFAULTS={offset:10},i.prototype.refresh=function(){var r=this.$element[0]==window?"offset":"position";this.offsets=o([]),this.targets=o([]);var i=this;this.$body.find(this.selector).map(function(){var t=o(this),e=t.data("target")||t.attr("href"),n=/^#./.test(e)&&o(e);return n&&n.length&&n.is(":visible")&&[[n[r]().top+(!o.isWindow(i.$scrollElement.get(0))&&i.$scrollElement.scrollTop()),e]]||null}).sort(function(t,e){return t[0]-e[0]}).each(function(){i.offsets.push(this[0]),i.targets.push(this[1])})},i.prototype.process=function(){var t,e=this.$scrollElement.scrollTop()+this.options.offset,n=(this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight)-this.$scrollElement.height(),r=this.offsets,i=this.targets,o=this.activeTarget;if(n<=e)return o!=(t=i.last()[0])&&this.activate(t);if(o&&e<=r[0])return o!=(t=i[0])&&this.activate(t);for(t=r.length;t--;)o!=i[t]&&e>=r[t]&&(!r[t+1]||e<=r[t+1])&&this.activate(i[t])},i.prototype.activate=function(t){this.activeTarget=t,o(this.selector).parentsUntil(this.options.target,".active").removeClass("active");var e=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',n=o(e).parents("li").addClass("active");n.parent(".dropdown-menu").length&&(n=n.closest("li.dropdown").addClass("active")),n.trigger("activate.bs.scrollspy")};var t=o.fn.scrollspy;o.fn.scrollspy=function(r){return this.each(function(){var t=o(this),e=t.data("bs.scrollspy"),n="object"==typeof r&&r;e||t.data("bs.scrollspy",e=new i(this,n)),"string"==typeof r&&e[r]()})},o.fn.scrollspy.Constructor=i,o.fn.scrollspy.noConflict=function(){return o.fn.scrollspy=t,this},o(window).on("load",function(){o('[data-spy="scroll"]').each(function(){var t=o(this);t.scrollspy(t.data())})})}(jQuery),function(a){"use strict";var r=function(t){this.element=a(t)};r.prototype.show=function(){var t=this.element,e=t.closest("ul:not(.dropdown-menu)"),n=t.data("target");if(n||(n=(n=t.attr("href"))&&n.replace(/.*(?=#[^\s]*$)/,"")),!t.parent("li").hasClass("active")){var r=e.find(".active:last a")[0],i=a.Event("show.bs.tab",{relatedTarget:r});if(t.trigger(i),!i.isDefaultPrevented()){var o=a(n);this.activate(t.parent("li"),e),this.activate(o,o.parent(),function(){t.trigger({type:"shown.bs.tab",relatedTarget:r})})}}},r.prototype.activate=function(t,e,n){function r(){i.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),t.addClass("active"),o?(t[0].offsetWidth,t.addClass("in")):t.removeClass("fade"),t.parent(".dropdown-menu")&&t.closest("li.dropdown").addClass("active"),n&&n()}var i=e.find("> .active"),o=n&&a.support.transition&&i.hasClass("fade");o?i.one(a.support.transition.end,r).emulateTransitionEnd(150):r(),i.removeClass("in")};var t=a.fn.tab;a.fn.tab=function(n){return this.each(function(){var t=a(this),e=t.data("bs.tab");e||t.data("bs.tab",e=new r(this)),"string"==typeof n&&e[n]()})},a.fn.tab.Constructor=r,a.fn.tab.noConflict=function(){return a.fn.tab=t,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(t){t.preventDefault(),a(this).tab("show")})}(jQuery),function(l){"use strict";var c=function(t,e){this.options=l.extend({},c.DEFAULTS,e),this.$window=l(window).on("scroll.bs.affix.data-api",l.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",l.proxy(this.checkPositionWithEventLoop,this)),this.$element=l(t),this.affixed=this.unpin=this.pinnedOffset=null,this.checkPosition()};c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var t=this.$window.scrollTop(),e=this.$element.offset();return this.pinnedOffset=e.top-t},c.prototype.checkPositionWithEventLoop=function(){setTimeout(l.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var t=l(document).height(),e=this.$window.scrollTop(),n=this.$element.offset(),r=this.options.offset,i=r.top,o=r.bottom;"top"==this.affixed&&(n.top+=e),"object"!=typeof r&&(o=i=r),"function"==typeof i&&(i=r.top(this.$element)),"function"==typeof o&&(o=r.bottom(this.$element));var a=!(null!=this.unpin&&e+this.unpin<=n.top)&&(null!=o&&n.top+this.$element.height()>=t-o?"bottom":null!=i&&e<=i&&"top");if(this.affixed!==a){this.unpin&&this.$element.css("top","");var s="affix"+(a?"-"+a:""),u=l.Event(s+".bs.affix");this.$element.trigger(u),u.isDefaultPrevented()||(this.affixed=a,this.unpin="bottom"==a?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(s).trigger(l.Event(s.replace("affix","affixed"))),"bottom"==a&&this.$element.offset({top:t-o-this.$element.height()}))}}};var t=l.fn.affix;l.fn.affix=function(r){return this.each(function(){var t=l(this),e=t.data("bs.affix"),n="object"==typeof r&&r;e||t.data("bs.affix",e=new c(this,n)),"string"==typeof r&&e[r]()})},l.fn.affix.Constructor=c,l.fn.affix.noConflict=function(){return l.fn.affix=t,this},l(window).on("load",function(){l('[data-spy="affix"]').each(function(){var t=l(this),e=t.data();e.offset=e.offset||{},e.offsetBottom&&(e.offset.bottom=e.offsetBottom),e.offsetTop&&(e.offset.top=e.offsetTop),t.affix(e)})})}(jQuery),function(S){S.extend({tablesorter:new function(){function w(){var t=arguments[0],e=1<arguments.length?Array.prototype.slice.call(arguments):t;"undefined"!=typeof console&&void 0!==console.log?console[/error/i.test(t)?"error":/warn/i.test(t)?"warn":"log"](e):alert(e)}function C(t,e){w(t+" ("+((new Date).getTime()-e.getTime())+"ms)")}function y(t){for(var e in t)return!1;return!0}function T(t,e,n){if(!e)return"";var r,i=t.config,o=i.textExtraction||"",a="basic"===o?S(e).attr(i.textAttribute)||e.textContent||e.innerText||S(e).text()||"":"function"==typeof o?o(e,t,n):"function"==typeof(r=E.getColumnData(t,o,n))?r(e,t,n):e.textContent||e.innerText||S(e).text()||"";return S.trim(a)}function h(t){var e,n,r,i,o,a,s,u,l,c,f,h=t.config,d=h.$tbodies=h.$table.children("tbody:not(."+h.cssInfoBlock+")"),p=0,g="",v=d.length;if(0===v)return h.debug?w("Warning: *Empty table!* Not building a parser cache"):"";for(h.debug&&(f=new Date,w("Detecting parsers for each column")),e=[],n=[];p<v;){if((r=d[p].rows)[p])for(i=h.columns,o=0;o<i;o++){if(a=h.$headers.filter('[data-column="'+o+'"]:last'),s=E.getColumnData(t,h.headers,o),c=E.getParserById(E.getData(a,s,"extractor")),l=E.getParserById(E.getData(a,s,"sorter")),u="false"===E.getData(a,s,"parser"),h.empties[o]=E.getData(a,s,"empty")||h.emptyTo||(h.emptyToBottom?"bottom":"top"),h.strings[o]=E.getData(a,s,"string")||h.stringTo||"max",u&&(l=E.getParserById("no-parser")),c||(c=!1),!l)t:{a=t,s=r,u=-1,l=o;var m=void 0,y=E.parsers.length,b=!1,x="";for(m=!0;""===x&&m;)s[++u]?(x=T(a,b=s[u].cells[l],l),a.config.debug&&w("Checking if value was empty on row "+u+", column: "+l+': "'+x+'"')):m=!1;for(;0<=--y;)if((m=E.parsers[y])&&"text"!==m.id&&m.is&&m.is(x,a,b)){l=m;break t}l=E.getParserById("text")}h.debug&&(g+="column:"+o+"; extractor:"+c.id+"; parser:"+l.id+"; string:"+h.strings[o]+"; empty: "+h.empties[o]+"\n"),n[o]=l,e[o]=c}p+=n.length?v:1}h.debug&&(w(g||"No parsers detected"),C("Completed detecting parsers",f)),h.parsers=n,h.extractors=e}function g(t){var e,n,r,i,o,a,s,u,l,c,f,h=t.config,d=h.$table.children("tbody"),p=h.extractors,g=h.parsers;if(h.cache={},h.totalRows=0,!g)return h.debug?w("Warning: *Empty table!* Not building a cache"):"";for(h.debug&&(u=new Date),h.showProcessing&&E.isProcessing(t,!0),o=0;o<d.length;o++)if(f=[],e=h.cache[o]={normalized:[]},!d.eq(o).hasClass(h.cssInfoBlock)){for(l=d[o]&&d[o].rows.length||0,r=0;r<l;++r)if(c={child:[]},s=[],(a=S(d[o].rows[r])).hasClass(h.cssChildRow)&&0!==r)n=e.normalized.length-1,e.normalized[n][h.columns].$row=e.normalized[n][h.columns].$row.add(a),a.prev().hasClass(h.cssChildRow)||a.prev().addClass(E.css.cssHasChild),c.child[n]=S.trim(a[0].textContent||a[0].innerText||a.text()||"");else{for(c.$row=a,c.order=r,i=0;i<h.columns;++i)void 0===g[i]?h.debug&&w("No parser found for cell:",a[0].cells[i],"does it have a header?"):(n=T(t,a[0].cells[i],i),n=void 0===p[i].id?n:p[i].format(n,t,a[0].cells[i],i),n="no-parser"===g[i].id?"":g[i].format(n,t,a[0].cells[i],i),s.push(h.ignoreCase&&"string"==typeof n?n.toLowerCase():n),"numeric"===(g[i].type||"").toLowerCase()&&(f[i]=Math.max(Math.abs(n)||0,f[i]||0)));s[h.columns]=c,e.normalized.push(s)}e.colMax=f,h.totalRows+=e.normalized.length}h.showProcessing&&E.isProcessing(t),h.debug&&C("Building cache for "+l+" rows",u)}function v(t,e){var n,r,i,o,a,s,u=t.config,l=u.widgetOptions,c=t.tBodies,f=[],h=u.cache;if(y(h))return u.appender?u.appender(t,f):t.isUpdating?u.$table.trigger("updateComplete",t):"";for(u.debug&&(s=new Date),a=0;a<c.length;a++)if((n=S(c[a])).length&&!n.hasClass(u.cssInfoBlock)){for(i=E.processTbody(t,n,!0),r=(n=h[a].normalized).length,o=0;o<r;o++)f.push(n[o][u.columns].$row),u.appender&&(!u.pager||u.pager.removeRows&&l.pager_removeRows||u.pager.ajax)||i.append(n[o][u.columns].$row);E.processTbody(t,i,!1)}u.appender&&u.appender(t,f),u.debug&&C("Rebuilt table",s),e||u.appender||E.applyWidget(t),t.isUpdating&&u.$table.trigger("updateComplete",t)}function l(t){return/^d/i.test(t)||1===t}function a(e){var n,r,i,o,a,s,t,u=e.config;u.headerList=[],u.headerContent=[],u.debug&&(t=new Date),u.columns=E.computeColumnIndex(u.$table.children("thead, tfoot").children("tr")),o=u.cssIcon?'<i class="'+(u.cssIcon===E.css.icon?E.css.icon:u.cssIcon+" "+E.css.icon)+'"></i>':"",u.$headers=S(e).find(u.selectorHeaders).each(function(t){r=S(this),n=E.getColumnData(e,u.headers,t,!0),u.headerContent[t]=S(this).html(),a=u.headerTemplate.replace(/\{content\}/g,S(this).html()).replace(/\{icon\}/g,o),u.onRenderTemplate&&(i=u.onRenderTemplate.apply(r,[t,a]))&&"string"==typeof i&&(a=i),S(this).html('<div class="'+E.css.headerIn+'">'+a+"</div>"),u.onRenderHeader&&u.onRenderHeader.apply(r,[t]),this.column=parseInt(S(this).attr("data-column"),10),this.order=l(E.getData(r,n,"sortInitialOrder")||u.sortInitialOrder)?[1,0,2]:[0,1,2],this.count=-1,this.lockedOrder=!1,void 0!==(s=E.getData(r,n,"lockedOrder")||!1)&&!1!==s&&(this.order=this.lockedOrder=l(s)?[1,1,1]:[0,0,0]),r.addClass(E.css.header+" "+u.cssHeader),u.headerList[t]=this,r.parent().addClass(E.css.headerRow+" "+u.cssHeaderRow).attr("role","row"),u.tabIndex&&r.attr("tabindex",0)}).attr({scope:"col",role:"columnheader"}),b(e),u.debug&&(C("Built headers:",t),w(u.$headers))}function m(t,e,n){var r=t.config;r.$table.find(r.selectorRemove).remove(),h(t),g(t),A(r.$table,e,n)}function b(n){var r,i,o,a=n.config;a.$headers.each(function(t,e){i=S(e),o=E.getColumnData(n,a.headers,t,!0),r="false"===E.getData(e,o,"sorter")||"false"===E.getData(e,o,"parser"),e.sortDisabled=r,i[r?"addClass":"removeClass"]("sorter-false").attr("aria-disabled",""+r),n.id&&(r?i.removeAttr("aria-controls"):i.attr("aria-controls",n.id))})}function x(t){var e,n,r=t.config,i=r.sortList,o=i.length,a=E.css.sortNone+" "+r.cssNone,s=[E.css.sortAsc+" "+r.cssAsc,E.css.sortDesc+" "+r.cssDesc],u=["ascending","descending"],l=S(t).find("tfoot tr").children().add(r.$extraHeaders).removeClass(s.join(" "));for(r.$headers.removeClass(s.join(" ")).addClass(a).attr("aria-sort","none"),e=0;e<o;e++)if(2!==i[e][1]&&(t=r.$headers.not(".sorter-false").filter('[data-column="'+i[e][0]+'"]'+(1===o?":last":""))).length){for(n=0;n<t.length;n++)t[n].sortDisabled||t.eq(n).removeClass(a).addClass(s[i[e][1]]).attr("aria-sort",u[i[e][1]]);l.length&&l.filter('[data-column="'+i[e][0]+'"]').removeClass(a).addClass(s[i[e][1]])}r.$headers.not(".sorter-false").each(function(){var t=S(this),e=this.order[(this.count+1)%(r.sortReset?3:2)];e=t.text()+": "+E.language[t.hasClass(E.css.sortAsc)?"sortAsc":t.hasClass(E.css.sortDesc)?"sortDesc":"sortNone"]+E.language[0===e?"nextAsc":1===e?"nextDesc":"nextNone"];t.attr("aria-label",e)})}function M(i){var o,t,a,s,e,u,l,c,f,h,d=0,p=i.config,g=p.textSorter||"",v=p.sortList,m=v.length,n=i.tBodies.length;if(!p.serverSideSorting&&!y(p.cache)){for(p.debug&&(e=new Date),t=0;t<n;t++)u=p.cache[t].colMax,p.cache[t].normalized.sort(function(t,e){for(o=0;o<m&&(s=v[o][0],l=v[o][1],d=0===l,!p.sortStable||t[s]!==e[s]||1!==m);o++)if((a=/n/i.test((n=p.parsers,r=s,n&&n[r]&&n[r].type||"")))&&p.strings[s]?(a="boolean"==typeof p.string[p.strings[s]]?(d?1:-1)*(p.string[p.strings[s]]?-1:1):p.strings[s]&&p.string[p.strings[s]]||0,c=p.numberSorter?p.numberSorter(t[s],e[s],d,u[s],i):E["sortNumeric"+(d?"Asc":"Desc")](t[s],e[s],a,u[s],s,i)):(f=d?t:e,h=d?e:t,c="function"==typeof g?g(f[s],h[s],d,s,i):"object"==typeof g&&g.hasOwnProperty(s)?g[s](f[s],h[s],d,s,i):E["sortNatural"+(d?"Asc":"Desc")](t[s],e[s],s,i,p)),c)return c;var n,r;return t[p.columns].order-e[p.columns].order});p.debug&&C("Sorting on "+v.toString()+" and dir "+l+" time",e)}}function i(t,e){t[0].isUpdating&&t.trigger("updateComplete"),S.isFunction(e)&&e(t[0])}function A(t,e,n){var r=t[0].config.sortList;!1!==e&&!t[0].isProcessing&&r.length?t.trigger("sorton",[r,function(){i(t,n)},!0]):(i(t,n),E.applyWidget(t[0],!1))}function s(d){var f=d.config,p=f.$table;p.unbind("sortReset update updateRows updateCell updateAll addRows updateComplete sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave ".split(" ").join(f.namespace+" ")).bind("sortReset"+f.namespace,function(t,e){t.stopPropagation(),f.sortList=[],x(d),M(d),v(d),S.isFunction(e)&&e(d)}).bind("updateAll"+f.namespace,function(t,e,n){t.stopPropagation(),d.isUpdating=!0,E.refreshWidgets(d,!0,!0),E.restoreHeaders(d),a(d),E.bindEvents(d,f.$headers,!0),s(d),m(d,e,n)}).bind("update"+f.namespace+" updateRows"+f.namespace,function(t,e,n){t.stopPropagation(),d.isUpdating=!0,b(d),m(d,e,n)}).bind("updateCell"+f.namespace,function(t,e,n,r){var i,o,a;t.stopPropagation(),d.isUpdating=!0,p.find(f.selectorRemove).remove(),o=p.find("tbody"),a=S(e),t=o.index(S.fn.closest?a.closest("tbody"):a.parents("tbody").filter(":first")),i=S.fn.closest?a.closest("tr"):a.parents("tr").filter(":first"),e=a[0],o.length&&0<=t&&(o=o.eq(t).find("tr").index(i),a=a.index(),f.cache[t].normalized[o][f.columns].$row=i,i=void 0===f.extractors[a].id?T(d,e,a):f.extractors[a].format(T(d,e,a),d,e,a),e="no-parser"===f.parsers[a].id?"":f.parsers[a].format(i,d,e,a),f.cache[t].normalized[o][a]=f.ignoreCase&&"string"==typeof e?e.toLowerCase():e,"numeric"===(f.parsers[a].type||"").toLowerCase()&&(f.cache[t].colMax[a]=Math.max(Math.abs(e)||0,f.cache[t].colMax[a]||0)),A(p,n,r))}).bind("addRows"+f.namespace,function(t,e,n,r){if(t.stopPropagation(),d.isUpdating=!0,y(f.cache))b(d),m(d,n,r);else{var i,o,a,s,u,l=(e=S(e).attr("role","row")).filter("tr").length,c=p.find("tbody").index(e.parents("tbody").filter(":first"));for(f.parsers&&f.parsers.length||h(d),t=0;t<l;t++){for(o=e[t].cells.length,u=[],s={child:[],$row:e.eq(t),order:f.cache[c].normalized.length},i=0;i<o;i++)a=void 0===f.extractors[i].id?T(d,e[t].cells[i],i):f.extractors[i].format(T(d,e[t].cells[i],i),d,e[t].cells[i],i),a="no-parser"===f.parsers[i].id?"":f.parsers[i].format(a,d,e[t].cells[i],i),u[i]=f.ignoreCase&&"string"==typeof a?a.toLowerCase():a,"numeric"===(f.parsers[i].type||"").toLowerCase()&&(f.cache[c].colMax[i]=Math.max(Math.abs(u[i])||0,f.cache[c].colMax[i]||0));u.push(s),f.cache[c].normalized.push(u)}A(p,n,r)}}).bind("updateComplete"+f.namespace,function(){d.isUpdating=!1}).bind("sorton"+f.namespace,function(t,e,n,r){var i,o,a,s,u,l,c,f,h=d.config;t.stopPropagation(),p.trigger("sortStart",this),i=e,c=d.config,f=i||c.sortList,c.sortList=[],S.each(f,function(t,e){if(u=parseInt(e[0],10),s=c.$headers.filter('[data-column="'+u+'"]:last')[0]){switch(a=(a=(""+e[1]).match(/^(1|d|s|o|n)/))?a[0]:""){case"1":case"d":a=1;break;case"s":a=l||0;break;case"o":o=s.order[(l||0)%(c.sortReset?3:2)],a=0===o?1:1===o?0:2;break;case"n":s.count+=1,a=s.order[s.count%(c.sortReset?3:2)];break;default:a=0}l=0===t?a:l,o=[u,parseInt(a,10)||0],c.sortList.push(o),a=S.inArray(o[1],s.order),s.count=0<=a?a:o[1]%(c.sortReset?3:2)}}),x(d),h.delayInit&&y(h.cache)&&g(d),p.trigger("sortBegin",this),M(d),v(d,r),p.trigger("sortEnd",this),E.applyWidget(d),S.isFunction(n)&&n(d)}).bind("appendCache"+f.namespace,function(t,e,n){t.stopPropagation(),v(d,n),S.isFunction(e)&&e(d)}).bind("updateCache"+f.namespace,function(t,e){f.parsers&&f.parsers.length||h(d),g(d),S.isFunction(e)&&e(d)}).bind("applyWidgetId"+f.namespace,function(t,e){t.stopPropagation(),E.getWidgetById(e).format(d,f,f.widgetOptions)}).bind("applyWidgets"+f.namespace,function(t,e){t.stopPropagation(),E.applyWidget(d,e)}).bind("refreshWidgets"+f.namespace,function(t,e,n){t.stopPropagation(),E.refreshWidgets(d,e,n)}).bind("destroy"+f.namespace,function(t,e,n){t.stopPropagation(),E.destroy(d,e,n)}).bind("resetToLoadState"+f.namespace,function(){E.refreshWidgets(d,!0,!0),f=S.extend(!0,E.defaults,f.originalSettings),d.hasInitialized=!1,E.setup(d,f)})}var E=this;E.version="2.17.7",E.parsers=[],E.widgets=[],E.defaults={theme:"default",widthFixed:!1,showProcessing:!1,headerTemplate:"{content}",onRenderTemplate:null,onRenderHeader:null,cancelSelection:!0,tabIndex:!0,dateFormat:"mmddyyyy",sortMultiSortKey:"shiftKey",sortResetKey:"ctrlKey",usNumberFormat:!0,delayInit:!1,serverSideSorting:!1,headers:{},ignoreCase:!0,sortForce:null,sortList:[],sortAppend:null,sortStable:!1,sortInitialOrder:"asc",sortLocaleCompare:!1,sortReset:!1,sortRestart:!1,emptyTo:"bottom",stringTo:"max",textExtraction:"basic",textAttribute:"data-text",textSorter:null,numberSorter:null,widgets:[],widgetOptions:{zebra:["even","odd"]},initWidgets:!0,initialized:null,tableClass:"",cssAsc:"",cssDesc:"",cssNone:"",cssHeader:"",cssHeaderRow:"",cssProcessing:"",cssChildRow:"tablesorter-childRow",cssIcon:"tablesorter-icon",cssInfoBlock:"tablesorter-infoOnly",selectorHeaders:"> thead th, > thead td",selectorSort:"th, td",selectorRemove:".remove-me",debug:!1,headerList:[],empties:{},strings:{},parsers:[]},E.css={table:"tablesorter",cssHasChild:"tablesorter-hasChildRow",childRow:"tablesorter-childRow",header:"tablesorter-header",headerRow:"tablesorter-headerRow",headerIn:"tablesorter-header-inner",icon:"tablesorter-icon",info:"tablesorter-infoOnly",processing:"tablesorter-processing",sortAsc:"tablesorter-headerAsc",sortDesc:"tablesorter-headerDesc",sortNone:"tablesorter-headerUnSorted"},E.language={sortAsc:"Ascending sort applied, ",sortDesc:"Descending sort applied, ",sortNone:"No sort applied, ",nextAsc:"activate to apply an ascending sort",nextDesc:"activate to apply a descending sort",nextNone:"activate to remove the sort"},E.log=w,E.benchmark=C,E.construct=function(e){return this.each(function(){var t=S.extend(!0,{},E.defaults,e);t.originalSettings=e,!this.hasInitialized&&E.buildTable&&"TABLE"!==this.tagName?E.buildTable(this,t):E.setup(this,t)})},E.setup=function(e,n){if(!e||!e.tHead||0===e.tBodies.length||!0===e.hasInitialized)return n.debug?w("ERROR: stopping initialization! No table, thead, tbody or tablesorter has already been initialized"):"";var t,r="",i=S(e),o=S.metadata;e.hasInitialized=!1,e.isProcessing=!0,e.config=n,S.data(e,"tablesorter",n),n.debug&&S.data(e,"startoveralltimer",new Date),n.supportsDataObject=((t=S.fn.jquery.split("."))[0]=parseInt(t[0],10),1<t[0]||1===t[0]&&4<=parseInt(t[1],10)),n.string={max:1,min:-1,emptyMin:1,emptyMax:-1,zero:0,none:0,null:0,top:!0,bottom:!1},/tablesorter\-/.test(i.attr("class"))||(r=""!==n.theme?" tablesorter-"+n.theme:""),n.table=e,n.$table=i.addClass(E.css.table+" "+n.tableClass+r).attr("role","grid"),n.$headers=i.find(n.selectorHeaders),n.namespace=n.namespace?"."+n.namespace.replace(/\W/g,""):".tablesorter"+Math.random().toString(16).slice(2),n.$table.children().children("tr").attr("role","row"),n.$tbodies=i.children("tbody:not(."+n.cssInfoBlock+")").attr({"aria-live":"polite","aria-relevant":"all"}),n.$table.find("caption").length&&n.$table.attr("aria-labelledby","theCaption"),n.widgetInit={},n.textExtraction=n.$table.attr("data-text-extraction")||n.textExtraction||"basic",a(e),function(t){if(t.config.widthFixed&&0===S(t).find("colgroup").length){var e=S("<colgroup>"),n=S(t).width();S(t.tBodies[0]).find("tr:first").children(":visible").each(function(){e.append(S("<col>").css("width",parseInt(S(this).width()/n*1e3,10)/10+"%"))}),S(t).prepend(e)}}(e),h(e),n.totalRows=0,n.delayInit||g(e),E.bindEvents(e,n.$headers,!0),s(e),n.supportsDataObject&&void 0!==i.data().sortlist?n.sortList=i.data().sortlist:o&&i.metadata()&&i.metadata().sortlist&&(n.sortList=i.metadata().sortlist),E.applyWidget(e,!0),0<n.sortList.length?i.trigger("sorton",[n.sortList,{},!n.initWidgets,!0]):(x(e),n.initWidgets&&E.applyWidget(e,!1)),n.showProcessing&&i.unbind("sortBegin"+n.namespace+" sortEnd"+n.namespace).bind("sortBegin"+n.namespace+" sortEnd"+n.namespace,function(t){clearTimeout(n.processTimer),E.isProcessing(e),"sortBegin"===t.type&&(n.processTimer=setTimeout(function(){E.isProcessing(e,!0)},500))}),e.hasInitialized=!0,e.isProcessing=!1,n.debug&&E.benchmark("Overall initialization time",S.data(e,"startoveralltimer")),i.trigger("tablesorter-initialized",e),"function"==typeof n.initialized&&n.initialized(e)},E.getColumnData=function(t,e,n,r){if(null!=e){var i,o=(t=S(t)[0]).config;if(e[n])return r?e[n]:e[o.$headers.index(o.$headers.filter('[data-column="'+n+'"]:last'))];for(i in e)if("string"==typeof i&&(t=r?o.$headers.eq(n).filter(i):o.$headers.filter('[data-column="'+n+'"]:last').filter(i)).length)return e[i]}},E.computeColumnIndex=function(t){var e,n,r,i,o,a,s,u,l,c,f=[],h=0;for(e=0;e<t.length;e++)for(o=t[e].cells,n=0;n<o.length;n++){for(r=o[n],i=S(r),a=r.parentNode.rowIndex,i.index(),s=r.rowSpan||1,u=r.colSpan||1,void 0===f[a]&&(f[a]=[]),r=0;r<f[a].length+1;r++)if(void 0===f[a][r]){l=r;break}for(h=Math.max(l,h),i.attr({"data-column":l}),r=a;r<a+s;r++)for(void 0===f[r]&&(f[r]=[]),c=f[r],i=l;i<l+u;i++)c[i]="x"}return h+1},E.isProcessing=function(t,e,n){var r=(t=S(t))[0].config,i=n||t.find("."+E.css.header);e?(void 0!==n&&0<r.sortList.length&&(i=i.filter(function(){return!this.sortDisabled&&0<=E.isValueInArray(parseFloat(S(this).attr("data-column")),r.sortList)})),t.add(i).addClass(E.css.processing+" "+r.cssProcessing)):t.add(i).removeClass(E.css.processing+" "+r.cssProcessing)},E.processTbody=function(t,e,n){if(t=S(t)[0],n)return t.isProcessing=!0,e.before('<span class="tablesorter-savemyplace"/>'),S.fn.detach?e.detach():e.remove();n=S(t).find("span.tablesorter-savemyplace"),e.insertAfter(n),n.remove(),t.isProcessing=!1},E.clearTableBody=function(t){S(t)[0].config.$tbodies.children().detach()},E.bindEvents=function(r,i,t){var o,a=(r=S(r)[0]).config;!0!==t&&(a.$extraHeaders=a.$extraHeaders?a.$extraHeaders.add(i):i),i.find(a.selectorSort).add(i.filter(a.selectorSort)).unbind(["mousedown","mouseup","sort","keyup",""].join(a.namespace+" ")).bind(["mousedown","mouseup","sort","keyup",""].join(a.namespace+" "),function(t,e){var n;if(n=t.type,!(1!==(t.which||t.button)&&!/sort|keyup/.test(n)||"keyup"===n&&13!==t.which||"mouseup"===n&&!0!==e&&250<(new Date).getTime()-o)){if("mousedown"===n)return o=(new Date).getTime(),/(input|select|button|textarea)/i.test(t.target.tagName)?"":!a.cancelSelection;a.delayInit&&y(a.cache)&&g(r),n=S.fn.closest?S(this).closest("th, td")[0]:/TH|TD/.test(this.tagName)?this:S(this).parents("th, td")[0],(n=a.$headers[i.index(n)]).sortDisabled||function t(e,n,r){if(e.isUpdating)return setTimeout(function(){t(e,n,r)},50);var i,o,a,s,u=e.config,l=!r[u.sortMultiSortKey],c=u.$table;if(c.trigger("sortStart",e),n.count=r[u.sortResetKey]?2:(n.count+1)%(u.sortReset?3:2),u.sortRestart&&(o=n,u.$headers.each(function(){this===o||!l&&S(this).is("."+E.css.sortDesc+",."+E.css.sortAsc)||(this.count=-1)})),o=n.column,l){if(u.sortList=[],null!==u.sortForce)for(i=u.sortForce,a=0;a<i.length;a++)i[a][0]!==o&&u.sortList.push(i[a]);if((i=n.order[n.count])<2&&(u.sortList.push([o,i]),1<n.colSpan))for(a=1;a<n.colSpan;a++)u.sortList.push([o+a,i])}else{if(u.sortAppend&&1<u.sortList.length)for(a=0;a<u.sortAppend.length;a++)0<=(s=E.isValueInArray(u.sortAppend[a][0],u.sortList))&&u.sortList.splice(s,1);if(0<=E.isValueInArray(o,u.sortList))for(a=0;a<u.sortList.length;a++)s=u.sortList[a],i=u.$headers.filter('[data-column="'+s[0]+'"]:last')[0],s[0]===o&&(s[1]=i.order[n.count],2===s[1]&&(u.sortList.splice(a,1),i.count=-1));else if((i=n.order[n.count])<2&&(u.sortList.push([o,i]),1<n.colSpan))for(a=1;a<n.colSpan;a++)u.sortList.push([o+a,i])}if(null!==u.sortAppend)for(i=u.sortAppend,a=0;a<i.length;a++)i[a][0]!==o&&u.sortList.push(i[a]);c.trigger("sortBegin",e),setTimeout(function(){x(e),M(e),v(e),c.trigger("sortEnd",e)},1)}(r,n,t)}}),a.cancelSelection&&i.attr("unselectable","on").bind("selectstart",!1).css({"user-select":"none",MozUserSelect:"none"})},E.restoreHeaders=function(t){var e=S(t)[0].config;e.$table.find(e.selectorHeaders).each(function(t){S(this).find("."+E.css.headerIn).length&&S(this).html(e.headerContent[t])})},E.destroy=function(t,e,n){if((t=S(t)[0]).hasInitialized){E.refreshWidgets(t,!0,!0);var r=S(t),i=t.config,o=r.find("thead:first"),a=o.find("tr."+E.css.headerRow).removeClass(E.css.headerRow+" "+i.cssHeaderRow),s=r.find("tfoot:first > tr").children("th, td");!1===e&&0<=S.inArray("uitheme",i.widgets)&&(r.trigger("applyWidgetId",["uitheme"]),r.trigger("applyWidgetId",["zebra"])),o.find("tr").not(a).remove(),r.removeData("tablesorter").unbind("sortReset update updateAll updateRows updateCell addRows updateComplete sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave keypress sortBegin sortEnd resetToLoadState ".split(" ").join(i.namespace+" ")),i.$headers.add(s).removeClass([E.css.header,i.cssHeader,i.cssAsc,i.cssDesc,E.css.sortAsc,E.css.sortDesc,E.css.sortNone].join(" ")).removeAttr("data-column").removeAttr("aria-label").attr("aria-disabled","true"),a.find(i.selectorSort).unbind(["mousedown","mouseup","keypress",""].join(i.namespace+" ")),E.restoreHeaders(t),r.toggleClass(E.css.table+" "+i.tableClass+" tablesorter-"+i.theme,!1===e),t.hasInitialized=!1,delete t.config.cache,"function"==typeof n&&n(t)}},E.regex={chunk:/(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,chunks:/(^\\0|\\0$)/,hex:/^0x[0-9a-f]+$/i},E.sortNatural=function(t,e){if(t===e)return 0;var n,r,i,o,a,s;if((r=E.regex).hex.test(e)){if((n=parseInt(t.match(r.hex),16))<(i=parseInt(e.match(r.hex),16)))return-1;if(i<n)return 1}for(n=t.replace(r.chunk,"\\0$1\\0").replace(r.chunks,"").split("\\0"),r=e.replace(r.chunk,"\\0$1\\0").replace(r.chunks,"").split("\\0"),s=Math.max(n.length,r.length),a=0;a<s;a++){if(i=isNaN(n[a])?n[a]||0:parseFloat(n[a])||0,o=isNaN(r[a])?r[a]||0:parseFloat(r[a])||0,isNaN(i)!==isNaN(o))return isNaN(i)?1:-1;if(typeof i!=typeof o&&(i+="",o+=""),i<o)return-1;if(o<i)return 1}return 0},E.sortNaturalAsc=function(t,e,n,r,i){return t===e?0:(n=i.string[i.empties[n]||i.emptyTo],""===t&&0!==n?"boolean"==typeof n?n?-1:1:-n||-1:""===e&&0!==n?"boolean"==typeof n?n?1:-1:n||1:E.sortNatural(t,e))},E.sortNaturalDesc=function(t,e,n,r,i){return t===e?0:(n=i.string[i.empties[n]||i.emptyTo],""===t&&0!==n?"boolean"==typeof n?n?-1:1:n||1:""===e&&0!==n?"boolean"==typeof n?n?1:-1:-n||-1:E.sortNatural(e,t))},E.sortText=function(t,e){return e<t?1:t<e?-1:0},E.getTextValue=function(t,e,n){if(n){var r=t?t.length:0,i=n+e;for(n=0;n<r;n++)i+=t.charCodeAt(n);return e*i}return 0},E.sortNumericAsc=function(t,e,n,r,i,o){return t===e?0:(i=(o=o.config).string[o.empties[i]||o.emptyTo],""===t&&0!==i?"boolean"==typeof i?i?-1:1:-i||-1:""===e&&0!==i?"boolean"==typeof i?i?1:-1:i||1:(isNaN(t)&&(t=E.getTextValue(t,n,r)),isNaN(e)&&(e=E.getTextValue(e,n,r)),t-e))},E.sortNumericDesc=function(t,e,n,r,i,o){return t===e?0:(i=(o=o.config).string[o.empties[i]||o.emptyTo],""===t&&0!==i?"boolean"==typeof i?i?-1:1:i||1:""===e&&0!==i?"boolean"==typeof i?i?1:-1:-i||-1:(isNaN(t)&&(t=E.getTextValue(t,n,r)),isNaN(e)&&(e=E.getTextValue(e,n,r)),e-t))},E.sortNumeric=function(t,e){return t-e},E.characterEquivalents={a:"áàâãäąå",A:"ÁÀÂÃÄĄÅ",c:"çćč",C:"ÇĆČ",e:"éèêëěę",E:"ÉÈÊËĚĘ",i:"íìİîïı",I:"ÍÌİÎÏ",o:"óòôõö",O:"ÓÒÔÕÖ",ss:"ß",SS:"ẞ",u:"úùûüů",U:"ÚÙÛÜŮ"},E.replaceAccents=function(t){var e,n="[",r=E.characterEquivalents;if(!E.characterRegex){for(e in E.characterRegexArray={},r)"string"==typeof e&&(n+=r[e],E.characterRegexArray[e]=new RegExp("["+r[e]+"]","g"));E.characterRegex=new RegExp(n+"]")}if(E.characterRegex.test(t))for(e in r)"string"==typeof e&&(t=t.replace(E.characterRegexArray[e],e));return t},E.isValueInArray=function(t,e){var n,r=e.length;for(n=0;n<r;n++)if(e[n][0]===t)return n;return-1},E.addParser=function(t){var e,n=E.parsers.length,r=!0;for(e=0;e<n;e++)E.parsers[e].id.toLowerCase()===t.id.toLowerCase()&&(r=!1);r&&E.parsers.push(t)},E.getParserById=function(t){if("false"==t)return!1;var e,n=E.parsers.length;for(e=0;e<n;e++)if(E.parsers[e].id.toLowerCase()===t.toString().toLowerCase())return E.parsers[e];return!1},E.addWidget=function(t){E.widgets.push(t)},E.hasWidget=function(t,e){return(t=S(t)).length&&t[0].config&&t[0].config.widgetInit[e]||!1},E.getWidgetById=function(t){var e,n,r=E.widgets.length;for(e=0;e<r;e++)if((n=E.widgets[e])&&n.hasOwnProperty("id")&&n.id.toLowerCase()===t.toLowerCase())return n},E.applyWidget=function(n,r){var t,e,i,o=(n=S(n)[0]).config,a=o.widgetOptions,s=[];!1!==r&&n.hasInitialized&&(n.isApplyingWidgets||n.isUpdating)||(o.debug&&(t=new Date),o.widgets.length&&(n.isApplyingWidgets=!0,o.widgets=S.grep(o.widgets,function(t,e){return S.inArray(t,o.widgets)===e}),S.each(o.widgets||[],function(t,e){(i=E.getWidgetById(e))&&i.id&&(i.priority||(i.priority=10),s[t]=i)}),s.sort(function(t,e){return t.priority<e.priority?-1:t.priority===e.priority?0:1}),S.each(s,function(t,e){e&&(!r&&o.widgetInit[e.id]||(o.widgetInit[e.id]=!0,e.hasOwnProperty("options")&&(a=n.config.widgetOptions=S.extend(!0,{},e.options,a)),e.hasOwnProperty("init")&&e.init(n,e,o,a)),!r&&e.hasOwnProperty("format")&&e.format(n,o,a,!1))})),setTimeout(function(){n.isApplyingWidgets=!1},0),o.debug&&(e=o.widgets.length,C("Completed "+(!0===r?"initializing ":"applying ")+e+" widget"+(1!==e?"s":""),t)))},E.refreshWidgets=function(t,e,n){var r,i=(t=S(t)[0]).config,o=i.widgets,a=E.widgets,s=a.length;for(r=0;r<s;r++)a[r]&&a[r].id&&(e||S.inArray(a[r].id,o)<0)&&(i.debug&&w('Refeshing widgets: Removing "'+a[r].id+'"'),a[r].hasOwnProperty("remove")&&i.widgetInit[a[r].id]&&(a[r].remove(t,i,i.widgetOptions),i.widgetInit[a[r].id]=!1));!0!==n&&E.applyWidget(t,e)},E.getData=function(t,e,n){var r,i,o="";return(t=S(t)).length?(r=!!S.metadata&&t.metadata(),i=" "+(t.attr("class")||""),void 0!==t.data(n)||void 0!==t.data(n.toLowerCase())?o+=t.data(n)||t.data(n.toLowerCase()):r&&void 0!==r[n]?o+=r[n]:e&&void 0!==e[n]?o+=e[n]:" "!==i&&i.match(" "+n+"-")&&(o=i.match(new RegExp("\\s"+n+"-([\\w-]+)"))[1]||""),S.trim(o)):""},E.formatFloat=function(t,e){return"string"!=typeof t||""===t?t:(t=(e&&e.config?!1!==e.config.usNumberFormat:void 0===e||e)?t.replace(/,/g,""):t.replace(/[\s|\.]/g,"").replace(/,/g,"."),/^\s*\([.\d]+\)/.test(t)&&(t=t.replace(/^\s*\(([.\d]+)\)/,"-$1")),n=parseFloat(t),isNaN(n)?S.trim(t):n);var n},E.isDigit=function(t){return!isNaN(t)||/^[\-+(]?\d+[)]?$/.test(t.toString().replace(/[,.'"\s]/g,""))}}});var c=S.tablesorter;S.fn.extend({tablesorter:c.construct}),c.addParser({id:"no-parser",is:function(){return!1},format:function(){return""},type:"text"}),c.addParser({id:"text",is:function(){return!0},format:function(t,e){var n=e.config;return t&&(t=S.trim(n.ignoreCase?t.toLocaleLowerCase():t),t=n.sortLocaleCompare?c.replaceAccents(t):t),t},type:"text"}),c.addParser({id:"digit",is:function(t){return c.isDigit(t)},format:function(t,e){var n=c.formatFloat((t||"").replace(/[^\w,. \-()]/g,""),e);return t&&"number"==typeof n?n:t?S.trim(t&&e.config.ignoreCase?t.toLocaleLowerCase():t):t},type:"numeric"}),c.addParser({id:"currency",is:function(t){return/^\(?\d+[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]|[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]\d+\)?$/.test((t||"").replace(/[+\-,. ]/g,""))},format:function(t,e){var n=c.formatFloat((t||"").replace(/[^\w,. \-()]/g,""),e);return t&&"number"==typeof n?n:t?S.trim(t&&e.config.ignoreCase?t.toLocaleLowerCase():t):t},type:"numeric"}),c.addParser({id:"ipAddress",is:function(t){return/^\d{1,3}[\.]\d{1,3}[\.]\d{1,3}[\.]\d{1,3}$/.test(t)},format:function(t,e){var n,r=t?t.split("."):"",i="",o=r.length;for(n=0;n<o;n++)i+=("00"+r[n]).slice(-3);return t?c.formatFloat(i,e):t},type:"numeric"}),c.addParser({id:"url",is:function(t){return/^(https?|ftp|file):\/\//.test(t)},format:function(t){return t?S.trim(t.replace(/(https?|ftp|file):\/\//,"")):t},type:"text"}),c.addParser({id:"isoDate",is:function(t){return/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}/.test(t)},format:function(t,e){return t?c.formatFloat(""!==t?new Date(t.replace(/-/g,"/")).getTime()||t:"",e):t},type:"numeric"}),c.addParser({id:"percent",is:function(t){return/(\d\s*?%|%\s*?\d)/.test(t)&&t.length<15},format:function(t,e){return t?c.formatFloat(t.replace(/%/g,""),e):t},type:"numeric"}),c.addParser({id:"usLongDate",is:function(t){return/^[A-Z]{3,10}\.?\s+\d{1,2},?\s+(\d{4})(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?$/i.test(t)||/^\d{1,2}\s+[A-Z]{3,10}\s+\d{4}/i.test(t)},format:function(t,e){return t?c.formatFloat(new Date(t.replace(/(\S)([AP]M)$/i,"$1 $2")).getTime()||t,e):t},type:"numeric"}),c.addParser({id:"shortDate",is:function(t){return/(^\d{1,2}[\/\s]\d{1,2}[\/\s]\d{4})|(^\d{4}[\/\s]\d{1,2}[\/\s]\d{1,2})/.test((t||"").replace(/\s+/g," ").replace(/[\-.,]/g,"/"))},format:function(t,e,n,r){if(t){var i=(n=e.config).$headers.filter("[data-column="+r+"]:last");r=i.length&&i[0].dateFormat||c.getData(i,c.getColumnData(e,n.headers,r),"dateFormat")||n.dateFormat,t=t.replace(/\s+/g," ").replace(/[\-.,]/g,"/"),"mmddyyyy"===r?t=t.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/,"$3/$1/$2"):"ddmmyyyy"===r?t=t.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/,"$3/$2/$1"):"yyyymmdd"===r&&(t=t.replace(/(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/,"$1/$2/$3"))}return t?c.formatFloat(new Date(t).getTime()||t,e):t},type:"numeric"}),c.addParser({id:"time",is:function(t){return/^(([0-2]?\d:[0-5]\d)|([0-1]?\d:[0-5]\d\s?([AP]M)))$/i.test(t)},format:function(t,e){return t?c.formatFloat(new Date("2000/01/01 "+t.replace(/(\S)([AP]M)$/i,"$1 $2")).getTime()||t,e):t},type:"numeric"}),c.addParser({id:"metadata",is:function(){return!1},format:function(t,e,n){return t=(t=e.config).parserMetadataName?t.parserMetadataName:"sortValue",S(n).metadata()[t]},type:"numeric"}),c.addWidget({id:"zebra",priority:90,format:function(t,e,n){var r,i,o,a,s,u=new RegExp(e.cssChildRow,"i"),l=e.$tbodies;for(e.debug&&(s=new Date),t=0;t<l.length;t++)1<(r=l.eq(t)).children("tr").length&&(o=0,(r=r.children("tr:visible").not(e.selectorRemove)).each(function(){i=S(this),u.test(this.className)||o++,a=0==o%2,i.removeClass(n.zebra[a?1:0]).addClass(n.zebra[a?0:1])}));e.debug&&c.benchmark("Applying Zebra widget",s)},remove:function(t,e,n){var r;e=e.$tbodies;var i=(n.zebra||["even","odd"]).join(" ");for(n=0;n<e.length;n++)(r=S.tablesorter.processTbody(t,e.eq(n),!0)).children().removeClass(i),S.tablesorter.processTbody(t,r,!1)}})}(jQuery),function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(l){l.extend(l.fn,{validate:function(t){if(this.length){var n=l.data(this[0],"validator");return n||(this.attr("novalidate","novalidate"),n=new l.validator(t,this[0]),l.data(this[0],"validator",n),n.settings.onsubmit&&(this.validateDelegate(":submit","click",function(t){n.settings.submitHandler&&(n.submitButton=t.target),l(t.target).hasClass("cancel")&&(n.cancelSubmit=!0),void 0!==l(t.target).attr("formnovalidate")&&(n.cancelSubmit=!0)}),this.submit(function(e){function t(){var t;return!n.settings.submitHandler||(n.submitButton&&(t=l("<input type='hidden'/>").attr("name",n.submitButton.name).val(l(n.submitButton).val()).appendTo(n.currentForm)),n.settings.submitHandler.call(n,n.currentForm,e),n.submitButton&&t.remove(),!1)}return n.settings.debug&&e.preventDefault(),n.cancelSubmit?(n.cancelSubmit=!1,t()):n.form()?n.pendingRequest?(n.formSubmitted=!0,!1):t():(n.focusInvalid(),!1)})),n)}t&&t.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing.")},valid:function(){var t,e;return l(this[0]).is("form")?t=this.validate().form():(t=!0,e=l(this[0].form).validate(),this.each(function(){t=e.element(this)&&t})),t},removeAttrs:function(t){var n={},r=this;return l.each(t.split(/\s/),function(t,e){n[e]=r.attr(e),r.removeAttr(e)}),n},rules:function(t,e){var n,r,i,o,a,s,u=this[0];if(t)switch(n=l.data(u.form,"validator").settings,r=n.rules,i=l.validator.staticRules(u),t){case"add":l.extend(i,l.validator.normalizeRule(e)),delete i.messages,r[u.name]=i,e.messages&&(n.messages[u.name]=l.extend(n.messages[u.name],e.messages));break;case"remove":return e?(s={},l.each(e.split(/\s/),function(t,e){s[e]=i[e],delete i[e],"required"===e&&l(u).removeAttr("aria-required")}),s):(delete r[u.name],i)}return(o=l.validator.normalizeRules(l.extend({},l.validator.classRules(u),l.validator.attributeRules(u),l.validator.dataRules(u),l.validator.staticRules(u)),u)).required&&(a=o.required,delete o.required,o=l.extend({required:a},o),l(u).attr("aria-required","true")),o.remote&&(a=o.remote,delete o.remote,o=l.extend(o,{remote:a})),o}}),l.extend(l.expr[":"],{blank:function(t){return!l.trim(""+l(t).val())},filled:function(t){return!!l.trim(""+l(t).val())},unchecked:function(t){return!l(t).prop("checked")}}),l.validator=function(t,e){this.settings=l.extend(!0,{},l.validator.defaults,t),this.currentForm=e,this.init()},l.validator.format=function(n,t){return 1===arguments.length?function(){var t=l.makeArray(arguments);return t.unshift(n),l.validator.format.apply(this,t)}:(2<arguments.length&&t.constructor!==Array&&(t=l.makeArray(arguments).slice(1)),t.constructor!==Array&&(t=[t]),l.each(t,function(t,e){n=n.replace(new RegExp("\\{"+t+"\\}","g"),function(){return e})}),n)},l.extend(l.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:l([]),errorLabelContainer:l([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(t){this.lastActive=t,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,t,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(t)))},onfocusout:function(t){this.checkable(t)||!(t.name in this.submitted)&&this.optional(t)||this.element(t)},onkeyup:function(t,e){(9!==e.which||""!==this.elementValue(t))&&(t.name in this.submitted||t===this.lastElement)&&this.element(t)},onclick:function(t){t.name in this.submitted?this.element(t):t.parentNode.name in this.submitted&&this.element(t.parentNode)},highlight:function(t,e,n){"radio"===t.type?this.findByName(t.name).addClass(e).removeClass(n):l(t).addClass(e).removeClass(n)},unhighlight:function(t,e,n){"radio"===t.type?this.findByName(t.name).removeClass(e).addClass(n):l(t).removeClass(e).addClass(n)}},setDefaults:function(t){l.extend(l.validator.defaults,t)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date ( ISO ).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:l.validator.format("Please enter no more than {0} characters."),minlength:l.validator.format("Please enter at least {0} characters."),rangelength:l.validator.format("Please enter a value between {0} and {1} characters long."),range:l.validator.format("Please enter a value between {0} and {1}."),max:l.validator.format("Please enter a value less than or equal to {0}."),min:l.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function t(t){var e=l.data(this[0].form,"validator"),n="on"+t.type.replace(/^validate/,""),r=e.settings;r[n]&&!this.is(r.ignore)&&r[n].call(e,this[0],t)}this.labelContainer=l(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||l(this.currentForm),this.containers=l(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var n,r=this.groups={};l.each(this.settings.groups,function(n,t){"string"==typeof t&&(t=t.split(/\s/)),l.each(t,function(t,e){r[e]=n})}),n=this.settings.rules,l.each(n,function(t,e){n[t]=l.validator.normalizeRule(e)}),l(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox']","focusin focusout keyup",t).validateDelegate("select, option, [type='radio'], [type='checkbox']","click",t),this.settings.invalidHandler&&l(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler),l(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required","true")},form:function(){return this.checkForm(),l.extend(this.submitted,this.errorMap),this.invalid=l.extend({},this.errorMap),this.valid()||l(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var t=0,e=this.currentElements=this.elements();e[t];t++)this.check(e[t]);return this.valid()},element:function(t){var e=this.clean(t),n=this.validationTargetFor(e),r=!0;return void 0===(this.lastElement=n)?delete this.invalid[e.name]:(this.prepareElement(n),this.currentElements=l(n),(r=!1!==this.check(n))?delete this.invalid[n.name]:this.invalid[n.name]=!0),l(t).attr("aria-invalid",!r),this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),r},showErrors:function(e){if(e){for(var t in l.extend(this.errorMap,e),this.errorList=[],e)this.errorList.push({message:e[t],element:this.findByName(t)[0]});this.successList=l.grep(this.successList,function(t){return!(t.name in e)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){l.fn.resetForm&&l(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue").removeAttr("aria-invalid")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(t){var e,n=0;for(e in t)n++;return n},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(t){t.not(this.containers).text(""),this.addWrapper(t).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{l(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(t){}},findLastActive:function(){var e=this.lastActive;return e&&1===l.grep(this.errorList,function(t){return t.element.name===e.name}).length&&e},elements:function(){var t=this,e={};return l(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return!this.name&&t.settings.debug&&window.console&&console.error("%o has no name assigned",this),!(this.name in e||!t.objectLength(l(this).rules()))&&(e[this.name]=!0)})},clean:function(t){return l(t)[0]},errors:function(){var t=this.settings.errorClass.split(" ").join(".");return l(this.settings.errorElement+"."+t,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=l([]),this.toHide=l([]),this.currentElements=l([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(t){this.reset(),this.toHide=this.errorsFor(t)},elementValue:function(t){var e,n=l(t),r=t.type;return"radio"===r||"checkbox"===r?l("input[name='"+t.name+"']:checked").val():"number"===r&&void 0!==t.validity?!t.validity.badInput&&n.val():"string"==typeof(e=n.val())?e.replace(/\r/g,""):e},check:function(e){e=this.validationTargetFor(this.clean(e));var t,n,r,i=l(e).rules(),o=l.map(i,function(t,e){return e}).length,a=!1,s=this.elementValue(e);for(n in i){r={method:n,parameters:i[n]};try{if("dependency-mismatch"===(t=l.validator.methods[n].call(this,s,e,r.parameters))&&1===o){a=!0;continue}if(a=!1,"pending"===t)return void(this.toHide=this.toHide.not(this.errorsFor(e)));if(!t)return this.formatAndAdd(e,r),!1}catch(t){throw this.settings.debug&&window.console&&console.log("Exception occurred when checking element "+e.id+", check the '"+r.method+"' method.",t),t}}if(!a)return this.objectLength(i)&&this.successList.push(e),!0},customDataMessage:function(t,e){return l(t).data("msg"+e.charAt(0).toUpperCase()+e.substring(1).toLowerCase())||l(t).data("msg")},customMessage:function(t,e){var n=this.settings.messages[t];return n&&(n.constructor===String?n:n[e])},findDefined:function(){for(var t=0;t<arguments.length;t++)if(void 0!==arguments[t])return arguments[t]},defaultMessage:function(t,e){return this.findDefined(this.customMessage(t.name,e),this.customDataMessage(t,e),!this.settings.ignoreTitle&&t.title||void 0,l.validator.messages[e],"<strong>Warning: No message defined for "+t.name+"</strong>")},formatAndAdd:function(t,e){var n=this.defaultMessage(t,e.method),r=/\$?\{(\d+)\}/g;"function"==typeof n?n=n.call(this,e.parameters,t):r.test(n)&&(n=l.validator.format(n.replace(r,"{$1}"),e.parameters)),this.errorList.push({message:n,element:t,method:e.method}),this.errorMap[t.name]=n,this.submitted[t.name]=n},addWrapper:function(t){return this.settings.wrapper&&(t=t.add(t.parent(this.settings.wrapper))),t},defaultShowErrors:function(){var t,e,n;for(t=0;this.errorList[t];t++)n=this.errorList[t],this.settings.highlight&&this.settings.highlight.call(this,n.element,this.settings.errorClass,this.settings.validClass),this.showLabel(n.element,n.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(t=0;this.successList[t];t++)this.showLabel(this.successList[t]);if(this.settings.unhighlight)for(t=0,e=this.validElements();e[t];t++)this.settings.unhighlight.call(this,e[t],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return l(this.errorList).map(function(){return this.element})},showLabel:function(t,e){var n,r,i,o=this.errorsFor(t),a=this.idOrName(t),s=l(t).attr("aria-describedby");o.length?(o.removeClass(this.settings.validClass).addClass(this.settings.errorClass),o.html(e)):(n=o=l("<"+this.settings.errorElement+">").attr("id",a+"-error").addClass(this.settings.errorClass).html(e||""),this.settings.wrapper&&(n=o.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(n):this.settings.errorPlacement?this.settings.errorPlacement(n,l(t)):n.insertAfter(t),o.is("label")?o.attr("for",a):0===o.parents("label[for='"+a+"']").length&&(i=o.attr("id"),s?s.match(new RegExp("\b"+i+"\b"))||(s+=" "+i):s=i,l(t).attr("aria-describedby",s),(r=this.groups[t.name])&&l.each(this.groups,function(t,e){e===r&&l("[name='"+t+"']",this.currentForm).attr("aria-describedby",o.attr("id"))}))),!e&&this.settings.success&&(o.text(""),"string"==typeof this.settings.success?o.addClass(this.settings.success):this.settings.success(o,t)),this.toShow=this.toShow.add(o)},errorsFor:function(t){var e=this.idOrName(t),n=l(t).attr("aria-describedby"),r="label[for='"+e+"'], label[for='"+e+"'] *";return n&&(r=r+", #"+n.replace(/\s+/g,", #")),this.errors().filter(r)},idOrName:function(t){return this.groups[t.name]||(this.checkable(t)?t.name:t.id||t.name)},validationTargetFor:function(t){return this.checkable(t)&&(t=this.findByName(t.name).not(this.settings.ignore)[0]),t},checkable:function(t){return/radio|checkbox/i.test(t.type)},findByName:function(t){return l(this.currentForm).find("[name='"+t+"']")},getLength:function(t,e){switch(e.nodeName.toLowerCase()){case"select":return l("option:selected",e).length;case"input":if(this.checkable(e))return this.findByName(e.name).filter(":checked").length}return t.length},depend:function(t,e){return!this.dependTypes[typeof t]||this.dependTypes[typeof t](t,e)},dependTypes:{boolean:function(t){return t},string:function(t,e){return!!l(t,e.form).length},function:function(t,e){return t(e)}},optional:function(t){var e=this.elementValue(t);return!l.validator.methods.required.call(this,e,t)&&"dependency-mismatch"},startRequest:function(t){this.pending[t.name]||(this.pendingRequest++,this.pending[t.name]=!0)},stopRequest:function(t,e){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[t.name],e&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(l(this.currentForm).submit(),this.formSubmitted=!1):!e&&0===this.pendingRequest&&this.formSubmitted&&(l(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(t){return l.data(t,"previousValue")||l.data(t,"previousValue",{old:null,valid:!0,message:this.defaultMessage(t,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(t,e){t.constructor===String?this.classRuleSettings[t]=e:l.extend(this.classRuleSettings,t)},classRules:function(t){var e={},n=l(t).attr("class");return n&&l.each(n.split(" "),function(){this in l.validator.classRuleSettings&&l.extend(e,l.validator.classRuleSettings[this])}),e},attributeRules:function(t){var e,n,r={},i=l(t),o=t.getAttribute("type");for(e in l.validator.methods)"required"===e?(""===(n=t.getAttribute(e))&&(n=!0),n=!!n):n=i.attr(e),/min|max/.test(e)&&(null===o||/number|range|text/.test(o))&&(n=Number(n)),n||0===n?r[e]=n:o===e&&"range"!==o&&(r[e]=!0);return r.maxlength&&/-1|2147483647|524288/.test(r.maxlength)&&delete r.maxlength,r},dataRules:function(t){var e,n,r={},i=l(t);for(e in l.validator.methods)void 0!==(n=i.data("rule"+e.charAt(0).toUpperCase()+e.substring(1).toLowerCase()))&&(r[e]=n);return r},staticRules:function(t){var e={},n=l.data(t.form,"validator");return n.settings.rules&&(e=l.validator.normalizeRule(n.settings.rules[t.name])||{}),e},normalizeRules:function(r,i){return l.each(r,function(t,e){if(!1!==e){if(e.param||e.depends){var n=!0;switch(typeof e.depends){case"string":n=!!l(e.depends,i.form).length;break;case"function":n=e.depends.call(i,i)}n?r[t]=void 0===e.param||e.param:delete r[t]}}else delete r[t]}),l.each(r,function(t,e){r[t]=l.isFunction(e)?e(i):e}),l.each(["minlength","maxlength"],function(){r[this]&&(r[this]=Number(r[this]))}),l.each(["rangelength","range"],function(){var t;r[this]&&(l.isArray(r[this])?r[this]=[Number(r[this][0]),Number(r[this][1])]:"string"==typeof r[this]&&(t=r[this].replace(/[\[\]]/g,"").split(/[\s,]+/),r[this]=[Number(t[0]),Number(t[1])]))}),l.validator.autoCreateRanges&&(r.min&&r.max&&(r.range=[r.min,r.max],delete r.min,delete r.max),r.minlength&&r.maxlength&&(r.rangelength=[r.minlength,r.maxlength],delete r.minlength,delete r.maxlength)),r},normalizeRule:function(t){if("string"==typeof t){var e={};l.each(t.split(/\s/),function(){e[this]=!0}),t=e}return t},addMethod:function(t,e,n){l.validator.methods[t]=e,l.validator.messages[t]=void 0!==n?n:l.validator.messages[t],e.length<3&&l.validator.addClassRules(t,l.validator.normalizeRule(t))},methods:{required:function(t,e,n){if(!this.depend(n,e))return"dependency-mismatch";if("select"===e.nodeName.toLowerCase()){var r=l(e).val();return r&&0<r.length}return this.checkable(e)?0<this.getLength(t,e):0<l.trim(t).length},email:function(t,e){return this.optional(e)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(t)},url:function(t,e){return this.optional(e)||/^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(t)},date:function(t,e){return this.optional(e)||!/Invalid|NaN/.test(new Date(t).toString())},dateISO:function(t,e){return this.optional(e)||/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(t)},number:function(t,e){return this.optional(e)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(t)},digits:function(t,e){return this.optional(e)||/^\d+$/.test(t)},creditcard:function(t,e){if(this.optional(e))return"dependency-mismatch";if(/[^0-9 \-]+/.test(t))return!1;var n,r,i=0,o=0,a=!1;if((t=t.replace(/\D/g,"")).length<13||19<t.length)return!1;for(n=t.length-1;0<=n;n--)r=t.charAt(n),o=parseInt(r,10),a&&9<(o*=2)&&(o-=9),i+=o,a=!a;return i%10==0},minlength:function(t,e,n){var r=l.isArray(t)?t.length:this.getLength(l.trim(t),e);return this.optional(e)||n<=r},maxlength:function(t,e,n){var r=l.isArray(t)?t.length:this.getLength(l.trim(t),e);return this.optional(e)||r<=n},rangelength:function(t,e,n){var r=l.isArray(t)?t.length:this.getLength(l.trim(t),e);return this.optional(e)||r>=n[0]&&r<=n[1]},min:function(t,e,n){return this.optional(e)||n<=t},max:function(t,e,n){return this.optional(e)||t<=n},range:function(t,e,n){return this.optional(e)||t>=n[0]&&t<=n[1]},equalTo:function(t,e,n){var r=l(n);return this.settings.onfocusout&&r.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){l(e).valid()}),t===r.val()},remote:function(o,a,t){if(this.optional(a))return"dependency-mismatch";var s,e,u=this.previousValue(a);return this.settings.messages[a.name]||(this.settings.messages[a.name]={}),u.originalMessage=this.settings.messages[a.name].remote,this.settings.messages[a.name].remote=u.message,t="string"==typeof t&&{url:t}||t,u.old===o?u.valid:(u.old=o,(s=this).startRequest(a),(e={})[a.name]=o,l.ajax(l.extend(!0,{url:t,mode:"abort",port:"validate"+a.name,dataType:"json",data:e,context:s.currentForm,success:function(t){var e,n,r,i=!0===t||"true"===t;s.settings.messages[a.name].remote=u.originalMessage,i?(r=s.formSubmitted,s.prepareElement(a),s.formSubmitted=r,s.successList.push(a),delete s.invalid[a.name],s.showErrors()):(e={},n=t||s.defaultMessage(a,"remote"),e[a.name]=u.message=l.isFunction(n)?n(o):n,s.invalid[a.name]=!0,s.showErrors(e)),u.valid=i,s.stopRequest(a,i)}},t)),"pending")}}}),l.format=function(){throw"$.format has been deprecated. Please use $.validator.format instead."};var r,i={};l.ajaxPrefilter?l.ajaxPrefilter(function(t,e,n){var r=t.port;"abort"===t.mode&&(i[r]&&i[r].abort(),i[r]=n)}):(r=l.ajax,l.ajax=function(t){var e=("mode"in t?t:l.ajaxSettings).mode,n=("port"in t?t:l.ajaxSettings).port;return"abort"===e?(i[n]&&i[n].abort(),i[n]=r.apply(this,arguments),i[n]):r.apply(this,arguments)}),l.extend(l.fn,{validateDelegate:function(n,t,r){return this.bind(t,function(t){var e=l(t.target);return e.is(n)?r.apply(e,arguments):void 0})}})}),function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?t(require("jquery")):t(jQuery)}(function(p){function g(t){return m.raw?t:encodeURIComponent(t)}function v(t,e){var n=m.raw?t:function(t){0===t.indexOf('"')&&(t=t.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return t=decodeURIComponent(t.replace(r," ")),m.json?JSON.parse(t):t}catch(t){}}(t);return p.isFunction(e)?e(n):n}var r=/\+/g,m=p.cookie=function(t,e,n){if(void 0!==e&&!p.isFunction(e)){if("number"==typeof(n=p.extend({},m.defaults,n)).expires){var r=n.expires,i=n.expires=new Date;i.setTime(+i+864e5*r)}return document.cookie=[g(t),"=",(o=e,g(m.json?JSON.stringify(o):String(o))),n.expires?"; expires="+n.expires.toUTCString():"",n.path?"; path="+n.path:"",n.domain?"; domain="+n.domain:"",n.secure?"; secure":""].join("")}for(var o,a,s=t?void 0:{},u=document.cookie?document.cookie.split("; "):[],l=0,c=u.length;l<c;l++){var f=u[l].split("="),h=(a=f.shift(),m.raw?a:decodeURIComponent(a)),d=f.join("=");if(t&&t===h){s=v(d,e);break}t||void 0===(d=v(d))||(s[h]=d)}return s};m.defaults={},p.removeCookie=function(t,e){return void 0!==p.cookie(t)&&(p.cookie(t,"",p.extend({},e,{expires:-1})),!p.cookie(t))}}),d3=function(){function s(t){return null!=t&&!isNaN(t)}function a(t){return t.length}function t(e,n){try{for(var t in n)Object.defineProperty(e.prototype,t,{value:n[t],enumerable:!1})}catch(t){e.prototype=n}}function b(){}function l(){}function o(e,n,r){return function(){var t=r.apply(n,arguments);return t===n?e:t}}function e(t,e){if(e in t)return e;e=e.charAt(0).toUpperCase()+e.substring(1);for(var n=0,r=oi.length;n<r;++n){var i=oi[n]+e;if(i in t)return i}}function c(){}function r(){}function u(i){function t(){for(var t,e=o,n=-1,r=e.length;++n<r;)(t=e[n].on)&&t.apply(this,arguments);return i}var o=[],a=new b;return t.on=function(t,e){var n,r=a.get(t);return arguments.length<2?r&&r.on:(r&&(r.on=null,o=o.slice(0,n=o.indexOf(r)).concat(o.slice(n+1)),a.remove(t)),e&&o.push(a.set(t,{on:e})),i)},t}function L(){Or.event.preventDefault()}function i(){for(var t,e=Or.event;t=e.sourceEvent;)e=t;return e}function G(i){for(var o=new r,t=0,e=arguments.length;++t<e;)o[arguments[t]]=u(o);return o.of=function(n,r){return function(t){try{var e=t.sourceEvent=Or.event;t.target=i,Or.event=t,o[t.type].apply(n,r)}finally{Or.event=e}}},o}function f(t){return si(t,hi),t}function h(t){return"function"==typeof t?t:function(){return ui(t,this)}}function g(t){return"function"==typeof t?t:function(){return li(t,this)}}function d(e,n){return e=Or.ns.qualify(e),null==n?e.local?function(){this.removeAttributeNS(e.space,e.local)}:function(){this.removeAttribute(e)}:"function"==typeof n?e.local?function(){var t=n.apply(this,arguments);null==t?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,t)}:function(){var t=n.apply(this,arguments);null==t?this.removeAttribute(e):this.setAttribute(e,t)}:e.local?function(){this.setAttributeNS(e.space,e.local,n)}:function(){this.setAttribute(e,n)}}function p(t){return t.trim().replace(/\s+/g," ")}function v(t){return new RegExp("(?:^|\\s+)"+Or.requote(t)+"(?:\\s+|$)","g")}function m(n,r){var i=(n=n.trim().split(/\s+/).map(y)).length;return"function"==typeof r?function(){for(var t=-1,e=r.apply(this,arguments);++t<i;)n[t](this,e)}:function(){for(var t=-1;++t<i;)n[t](this,r)}}function y(r){var i=v(r);return function(t,e){if(n=t.classList)return e?n.add(r):n.remove(r);var n=t.getAttribute("class")||"";e?(i.lastIndex=0,i.test(n)||t.setAttribute("class",p(n+" "+r))):t.setAttribute("class",p(n.replace(i," ")))}}function x(e,n,r){return null==n?function(){this.style.removeProperty(e)}:"function"==typeof n?function(){var t=n.apply(this,arguments);null==t?this.style.removeProperty(e):this.style.setProperty(e,t,r)}:function(){this.style.setProperty(e,n,r)}}function n(e,n){return null==n?function(){delete this[e]}:"function"==typeof n?function(){var t=n.apply(this,arguments);null==t?delete this[e]:this[e]=t}:function(){this[e]=n}}function w(t){return"function"==typeof t?t:(t=Or.ns.qualify(t)).local?function(){return Wr.createElementNS(t.space,t.local)}:function(){return Wr.createElementNS(this.namespaceURI,t)}}function C(t){return{__data__:t}}function T(t){return function(){return fi(this,t)}}function M(t,e){for(var n=0,r=t.length;n<r;n++)for(var i,o=t[n],a=0,s=o.length;a<s;a++)(i=o[a])&&e(i,a,n);return t}function A(t){return si(t,pi),t}function E(i,e,n){function r(){var t=this[o];t&&(this.removeEventListener(i,t,t.$),delete this[o])}var o="__on"+i,t=i.indexOf("."),a=S;0<t&&(i=i.substring(0,t));var s=vi.get(i);return s&&(i=s,a=N),t?e?function(){var t=a(e,Yr(arguments));r.call(this),this.addEventListener(i,this[o]=t,t.$=n),t._=e}:r:e?c:function(){var t,e=new RegExp("^__on([^.]+)"+Or.requote(i)+"$");for(var n in this)if(t=n.match(e)){var r=this[n];this.removeEventListener(t[1],r,r.$),delete this[n]}}}function S(n,r){return function(t){var e=Or.event;Or.event=t,r[0]=this.__data__;try{n.apply(this,r)}finally{Or.event=e}}}function N(t,e){var n=S(t,e);return function(t){var e=t.relatedTarget;e&&(e===this||8&e.compareDocumentPosition(this))||n.call(this,t)}}function F(){var n=".dragsuppress-"+ ++yi,t="touchmove"+n,e="selectstart"+n,r="dragstart"+n,i="click"+n,o=Or.select(Ur).on(t,L).on(e,L).on(r,L),a=Br.style,s=a[mi];return a[mi]="none",function(t){function e(){o.on(i,null)}o.on(n,null),a[mi]=s,t&&(o.on(i,function(){L(),e()},!0),setTimeout(e,0))}}function k(t,e){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();if(bi<0&&(Ur.scrollX||Ur.scrollY)){var i=(n=Or.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important"))[0][0].getScreenCTM();bi=!(i.f||i.e),n.remove()}return bi?(r.x=e.pageX,r.y=e.pageY):(r.x=e.clientX,r.y=e.clientY),[(r=r.matrixTransform(t.getScreenCTM().inverse())).x,r.y]}var o=t.getBoundingClientRect();return[e.clientX-o.left-t.clientLeft,e.clientY-o.top-t.clientTop]}function D(t){return 0<t?1:t<0?-1:0}function _(t){return 1<t?0:t<-1?xi:Math.acos(t)}function $(t){return 1<t?xi/2:t<-1?-xi/2:Math.asin(t)}function P(t){return(Math.exp(t)-Math.exp(-t))/2}function R(t){return(Math.exp(t)+Math.exp(-t))/2}function I(t){return(t=Math.sin(t/2))*t}function V(){}function j(t,e,n){return new q(t,e,n)}function q(t,e,n){this.h=t,this.s=e,this.l=n}function H(t,e,n){function r(t){return Math.round(255*(360<(e=t)?e-=360:e<0&&(e+=360),e<60?i+(o-i)*e/60:e<180?o:e<240?i+(o-i)*(240-e)/60:i));var e}var i,o;return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)?0:e<0?0:1<e?1:e,i=2*(n=n<0?0:1<n?1:n)-(o=n<=.5?n*(1+e):n+e-n*e),et(r(t+120),r(t),r(t-120))}function z(t,e,n){return new K(t,e,n)}function K(t,e,n){this.h=t,this.c=e,this.l=n}function O(t,e,n){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),Q(n,Math.cos(t*=Ti)*e,Math.sin(t)*e)}function Q(t,e,n){return new Y(t,e,n)}function Y(t,e,n){this.l=t,this.a=e,this.b=n}function W(t,e,n){var r=(t+16)/116,i=r+e/500,o=r-n/200;return et(Z(3.2404542*(i=U(i)*Gi)-1.5371385*(r=U(r)*Fi)-.4985314*(o=U(o)*$i)),Z(-.969266*i+1.8760108*r+.041556*o),Z(.0556434*i-.2040259*r+1.0572252*o))}function B(t,e,n){return 0<t?z(Math.atan2(n,e)*Mi,Math.sqrt(e*e+n*n),t):z(NaN,NaN,t)}function U(t){return.206893034<t?t*t*t:(t-4/29)/7.787037}function X(t){return.008856<t?Math.pow(t,1/3):7.787037*t+4/29}function Z(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function J(t){return et(t>>16,255&t>>8,255&t)}function tt(t){return J(t)+""}function et(t,e,n){return new nt(t,e,n)}function nt(t,e,n){this.r=t,this.g=e,this.b=n}function rt(t){return t<16?"0"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function it(t,e,n){var r,i,o,a=0,s=0,u=0;if(r=/([a-z]+)\((.*)\)/i.exec(t))switch(i=r[2].split(","),r[1]){case"hsl":return n(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return e(ut(i[0]),ut(i[1]),ut(i[2]))}return(o=Ii.get(t))?e(o.r,o.g,o.b):(null!=t&&"#"===t.charAt(0)&&(4===t.length?(a=t.charAt(1),a+=a,s=t.charAt(2),s+=s,u=t.charAt(3),u+=u):7===t.length&&(a=t.substring(1,3),s=t.substring(3,5),u=t.substring(5,7)),a=parseInt(a,16),s=parseInt(s,16),u=parseInt(u,16)),e(a,s,u))}function ot(t,e,n){var r,i,o=Math.min(t/=255,e/=255,n/=255),a=Math.max(t,e,n),s=a-o,u=(a+o)/2;return s?(i=u<.5?s/(a+o):s/(2-a-o),r=t==a?(e-n)/s+(e<n?6:0):e==a?(n-t)/s+2:(t-e)/s+4,r*=60):(r=NaN,i=0<u&&u<1?0:r),j(r,i,u)}function at(t,e,n){var r=X((.4124564*(t=st(t))+.3575761*(e=st(e))+.1804375*(n=st(n)))/Gi),i=X((.2126729*t+.7151522*e+.072175*n)/Fi);return Q(116*i-16,500*(r-i),200*(i-X((.0193339*t+.119192*e+.9503041*n)/$i)))}function st(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function ut(t){var e=parseFloat(t);return"%"===t.charAt(t.length-1)?Math.round(2.55*e):e}function lt(t){return"function"==typeof t?t:function(){return t}}function ct(t){return t}function ft(r){return function(t,e,n){return 2===arguments.length&&"function"==typeof e&&(n=e,e=null),ht(t,e,r,n)}}function ht(i,o,n,t){function e(){var t,e=l.status;if(!e&&l.responseText||200<=e&&e<300||304===e){try{t=n.call(a,l)}catch(t){return void s.error.call(a,t)}s.load.call(a,t)}else s.error.call(a,l)}var r,a={},s=Or.dispatch("beforesend","progress","load","error"),u={},l=new XMLHttpRequest,c=null;return!Ur.XDomainRequest||"withCredentials"in l||!/^(http(s)?:)?\/\//.test(i)||(l=new XDomainRequest),"onload"in l?l.onload=l.onerror=e:l.onreadystatechange=function(){3<l.readyState&&e()},l.onprogress=function(t){var e=Or.event;Or.event=t;try{s.progress.call(a,l)}finally{Or.event=e}},a.header=function(t,e){return t=(t+"").toLowerCase(),arguments.length<2?u[t]:(null==e?delete u[t]:u[t]=e+"",a)},a.mimeType=function(t){return arguments.length?(o=null==t?null:t+"",a):o},a.responseType=function(t){return arguments.length?(c=t,a):c},a.response=function(t){return n=t,a},["get","post"].forEach(function(t){a[t]=function(){return a.send.apply(a,[t].concat(Yr(arguments)))}}),a.send=function(t,e,n){if(2===arguments.length&&"function"==typeof e&&(n=e,e=null),l.open(t,i,!0),null==o||"accept"in u||(u.accept=o+",*/*"),l.setRequestHeader)for(var r in u)l.setRequestHeader(r,u[r]);return null!=o&&l.overrideMimeType&&l.overrideMimeType(o),null!=c&&(l.responseType=c),null!=n&&a.on("error",n).on("load",function(t){n(null,t)}),s.beforesend.call(a,l),l.send(null==e?null:e),a},a.abort=function(){return l.abort(),a},Or.rebind(a,s,"on"),null==t?a:a.get(1===(r=t).length?function(t,e){r(null==t?e:null)}:r)}function dt(){var t=gt(),e=vt()-t;24<e?(isFinite(e)&&(clearTimeout(Hi),Hi=setTimeout(dt,e)),qi=0):(qi=1,Ki(dt))}function pt(t,e,n){var r=arguments.length;r<2&&(e=0),r<3&&(n=Date.now()),zi.callback=t,zi.time=n+e}function gt(){var t=Date.now();for(zi=Vi;zi;)t>=zi.time&&(zi.flush=zi.callback(t-zi.time)),zi=zi.next;return t}function vt(){for(var t,e=Vi,n=1/0;e;)e.flush?e=t?t.next=e.next:Vi=e.next:(e.time<n&&(n=e.time),e=(t=e).next);return ji=t,n}function mt(t,e){return e-(t?Math.ceil(Math.log(t)/Math.LN10):1)}function yt(t){return t+""}function bt(){}function xt(t,e,n){var r=n.s=t+e,i=r-t,o=r-i;n.t=t-o+(e-i)}function wt(t,e){t&&Ji.hasOwnProperty(t.type)&&Ji[t.type](t,e)}function Ct(t,e,n){var r,i=-1,o=t.length-n;for(e.lineStart();++i<o;)r=t[i],e.point(r[0],r[1],r[2]);e.lineEnd()}function Tt(t,e){var n=-1,r=t.length;for(e.polygonStart();++n<r;)Ct(t[n],e,1);e.polygonEnd()}function Mt(){function n(t,e){e=e*Ti/2+xi/4;var n=(t*=Ti)-u,r=Math.cos(e),i=Math.sin(e),o=c*i,a=l*r+o*Math.cos(n),s=o*Math.sin(n);eo.add(Math.atan2(s,a)),u=t,l=r,c=i}var r,i,u,l,c;no.point=function(t,e){no.point=n,u=(r=t)*Ti,l=Math.cos(e=(i=e)*Ti/2+xi/4),c=Math.sin(e)},no.lineEnd=function(){n(r,i)}}function At(t){var e=t[0],n=t[1],r=Math.cos(n);return[r*Math.cos(e),r*Math.sin(e),Math.sin(n)]}function Et(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function St(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function Nt(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function kt(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function Dt(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}function _t(t){return[Math.atan2(t[1],t[0]),$(t[2])]}function Lt(t,e){return Math.abs(t[0]-e[0])<wi&&Math.abs(t[1]-e[1])<wi}function Gt(t,e){t*=Ti;var n=Math.cos(e*=Ti);Ft(n*Math.cos(t),n*Math.sin(t),Math.sin(e))}function Ft(t,e,n){oo+=(t-oo)/++ro,ao+=(e-ao)/ro,so+=(n-so)/ro}function $t(){function r(t,e){t*=Ti;var n=Math.cos(e*=Ti),r=n*Math.cos(t),i=n*Math.sin(t),o=Math.sin(e),a=Math.atan2(Math.sqrt((a=u*o-l*i)*a+(a=l*r-s*o)*a+(a=s*i-u*r)*a),s*r+u*i+l*o);io+=a,uo+=a*(s+(s=r)),lo+=a*(u+(u=i)),co+=a*(l+(l=o)),Ft(s,u,l)}var s,u,l;go.point=function(t,e){t*=Ti;var n=Math.cos(e*=Ti);s=n*Math.cos(t),u=n*Math.sin(t),l=Math.sin(e),go.point=r,Ft(s,u,l)}}function Pt(){go.point=Gt}function Rt(){function r(t,e){t*=Ti;var n=Math.cos(e*=Ti),r=n*Math.cos(t),i=n*Math.sin(t),o=Math.sin(e),a=p*o-g*i,s=g*r-d*o,u=d*i-p*r,l=Math.sqrt(a*a+s*s+u*u),c=d*r+p*i+g*o,f=l&&-_(c)/l,h=Math.atan2(l,c);fo+=f*a,ho+=f*s,po+=f*u,io+=h,uo+=h*(d+(d=r)),lo+=h*(p+(p=i)),co+=h*(g+(g=o)),Ft(d,p,g)}var i,o,d,p,g;go.point=function(t,e){i=t,o=e,go.point=r,t*=Ti;var n=Math.cos(e*=Ti);d=n*Math.cos(t),p=n*Math.sin(t),g=Math.sin(e),Ft(d,p,g)},go.lineEnd=function(){r(i,o),go.lineEnd=Pt,go.point=Gt}}function It(){return!0}function Vt(t,e,n,r,s){var u=[],l=[];if(t.forEach(function(t){if(!((e=t.length-1)<=0)){var e,n=t[0],r=t[e];if(Lt(n,r)){s.lineStart();for(var i=0;i<e;++i)s.point((n=t[i])[0],n[1]);return void s.lineEnd()}var o={point:n,points:t,other:null,visited:!1,entry:!0,subject:!0},a={point:n,points:[n],other:o,visited:!1,entry:!1,subject:!1};o.other=a,u.push(o),l.push(a),a={point:r,points:[r],other:o={point:r,points:[r],other:null,visited:!1,entry:!1,subject:!0},visited:!1,entry:!0,subject:!1},o.other=a,u.push(o),l.push(a)}}),l.sort(e),jt(u),jt(l),u.length){if(n)for(var i=1,o=!n(l[0].point),a=l.length;i<a;++i)l[i].entry=o=!o;for(var c,f,h,d=u[0];;){for(c=d;c.visited;)if((c=c.next)===d)return;f=c.points,s.lineStart();do{if(c.visited=c.other.visited=!0,c.entry){if(c.subject)for(i=0;i<f.length;i++)s.point((h=f[i])[0],h[1]);else r(c.point,c.next.point,1,s);c=c.next}else{if(c.subject)for(i=(f=c.prev.points).length;0<=--i;)s.point((h=f[i])[0],h[1]);else r(c.point,c.prev.point,-1,s);c=c.prev}f=(c=c.other).points}while(!c.visited);s.lineEnd()}}}function jt(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r<e;)i.next=n=t[r],n.prev=i,i=n;i.next=n=t[0],n.prev=i}}function qt(g,v,m,y){return function(a){function t(t,e){g(t,e)&&a.point(t,e)}function e(t,e){f.point(t,e)}function n(){h.point=e,f.lineStart()}function r(){h.point=t,f.lineEnd()}function s(t,e){p.point(t,e),c.push([t,e])}function i(){p.lineStart(),c=[]}function o(){s(c[0][0],c[0][1]),p.lineEnd();var t,e=p.clean(),n=d.buffer(),r=n.length;if(c.pop(),l.push(c),c=null,r){if(1&e){r=(t=n[0]).length-1;var i,o=-1;for(a.lineStart();++o<r;)a.point((i=t[o])[0],i[1]);return void a.lineEnd()}1<r&&2&e&&n.push(n.pop().concat(n.shift())),u.push(n.filter(Ht))}}var u,l,c,f=v(a),h={point:t,lineStart:n,lineEnd:r,polygonStart:function(){h.point=s,h.lineStart=i,h.lineEnd=o,u=[],l=[],a.polygonStart()},polygonEnd:function(){h.point=t,h.lineStart=n,h.lineEnd=r,(u=Or.merge(u)).length?Vt(u,Kt,null,m,a):y(l)&&(a.lineStart(),m(null,null,1,a),a.lineEnd()),a.polygonEnd(),u=l=null},sphere:function(){a.polygonStart(),a.lineStart(),m(null,null,1,a),a.lineEnd(),a.polygonEnd()}},d=zt(),p=v(d);return h}}function Ht(t){return 1<t.length}function zt(){var n,e=[];return{lineStart:function(){e.push(n=[])},point:function(t,e){n.push([t,e])},lineEnd:c,buffer:function(){var t=e;return e=[],n=null,t},rejoin:function(){1<e.length&&e.push(e.pop().concat(e.shift()))}}}function Kt(t,e){return((t=t.point)[0]<0?t[1]-xi/2-wi:xi/2-t[1])-((e=e.point)[0]<0?e[1]-xi/2-wi:xi/2-e[1])}function Ot(t,e){var n=t[0],r=t[1],i=[Math.sin(n),-Math.cos(n),0],o=0,a=!1,s=!1,u=0;eo.reset();for(var l=0,c=e.length;l<c;++l){var f=e[l],h=f.length;if(h){for(var d=f[0],p=d[0],g=d[1]/2+xi/4,v=Math.sin(g),m=Math.cos(g),y=1;;){y===h&&(y=0);var b=(t=f[y])[0],x=t[1]/2+xi/4,w=Math.sin(x),C=Math.cos(x),T=b-p,M=Math.abs(T)>xi,A=v*w;if(eo.add(Math.atan2(A*Math.sin(T),m*C+A*Math.cos(T))),Math.abs(x)<wi&&(s=!0),o+=M?T+(0<=T?2:-2)*xi:T,M^n<=p^n<=b){var E=St(At(d),At(t));Dt(E);var S=St(i,E);Dt(S),(M^0<=T?-1:1)*$(S[2])<r&&(u+=M^0<=T?1:-1)}if(!y++)break;p=b,v=w,m=C,d=t}Math.abs(o)>wi&&(a=!0)}}return(!s&&!a&&eo<0||o<-wi)^1&u}function Qt(C,T,M,A){function l(t,e){return Math.abs(t[0]-C)<wi?0<e?0:3:Math.abs(t[0]-M)<wi?0<e?2:1:Math.abs(t[1]-T)<wi?0<e?1:0:0<e?3:2}function E(t,e){return S(t.point,e.point)}function S(t,e){var n=l(t,1),r=l(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(c){function t(t){var e=l(t,-1);return n([0===e||3===e?C:M,1<e?A:T])}function n(t){for(var e=0,n=d.length,r=t[1],i=0;i<n;++i)for(var o,a=1,s=d[i],u=s.length,l=s[0];a<u;++a)o=s[a],l[1]<=r?o[1]>r&&0<f(l,o,t)&&++e:o[1]<=r&&f(l,o,t)<0&&--e,l=o;return 0!==e}function f(t,e,n){return(e[0]-t[0])*(n[1]-t[1])-(n[0]-t[0])*(e[1]-t[1])}function e(t,e,n,r){var i=0,o=0;if(null==t||(i=l(t,n))!==(o=l(e,n))||S(t,e)<0^0<n)for(;r.point(0===i||3===i?C:M,1<i?A:T),(i=(i+n+4)%4)!==o;);else r.point(e[0],e[1])}function h(t,e){return C<=t&&t<=M&&T<=e&&e<=A}function r(t,e){h(t,e)&&c.point(t,e)}function i(t,e){var n,r,i,o,a,s=h(t=Math.max(-yo,Math.min(yo,t)),e=Math.max(-yo,Math.min(yo,e)));if(d&&p.push([t,e]),w)g=t,v=e,w=!1,(m=s)&&(c.lineStart(),c.point(t,e));else if(s&&x)c.point(t,e);else{var u=[y,b],l=[t,e];i=(r=l)[0]-(n=u)[0],o=r[1]-n[1],a=[0,1],(Math.abs(i)<wi&&Math.abs(o)<wi?C<=n[0]&&n[0]<=M&&T<=n[1]&&n[1]<=A:Yt(C-n[0],i,a)&&Yt(n[0]-M,-i,a)&&Yt(T-n[1],o,a)&&Yt(n[1]-A,-o,a)&&(a[1]<1&&(r[0]=n[0]+a[1]*i,r[1]=n[1]+a[1]*o),0<a[0]&&(n[0]+=a[0]*i,n[1]+=a[0]*o),1))?(x||(c.lineStart(),c.point(u[0],u[1])),c.point(l[0],l[1]),s||c.lineEnd()):s&&(c.lineStart(),c.point(t,e))}y=t,b=e,x=s}var o,d,p,g,v,m,y,b,x,w,a=c,s=zt(),u={point:r,lineStart:function(){u.point=i,d&&d.push(p=[]),w=!0,x=!1,y=b=NaN},lineEnd:function(){o&&(i(g,v),m&&x&&s.rejoin(),o.push(s.buffer())),u.point=r,x&&c.lineEnd()},polygonStart:function(){c=s,o=[],d=[]},polygonEnd:function(){c=a,(o=Or.merge(o)).length?(c.polygonStart(),Vt(o,E,t,e,c),c.polygonEnd()):n([C,T])&&(c.polygonStart(),c.lineStart(),e(null,null,1,c),c.lineEnd(),c.polygonEnd()),o=d=p=null}};return u}}function Yt(t,e,n){if(Math.abs(e)<wi)return t<=0;var r=t/e;if(0<e){if(r>n[1])return!1;r>n[0]&&(n[0]=r)}else{if(r<n[0])return!1;r<n[1]&&(n[1]=r)}return!0}function Wt(n,r){function t(t,e){return t=n(t,e),r(t[0],t[1])}return n.invert&&r.invert&&(t.invert=function(t,e){return(t=r.invert(t,e))&&n.invert(t[0],t[1])}),t}function Bt(t){var e=0,n=xi/3,r=ae(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*xi/180,n=t[1]*xi/180):[e/xi*180,n/xi*180]},i}function Ut(t,e){function n(t,e){var n=Math.sqrt(o-2*i*Math.sin(e))/i;return[n*Math.sin(t*=i),a-n*Math.cos(t)]}var r=Math.sin(t),i=(r+Math.sin(e))/2,o=1+r*(2*i-r),a=Math.sqrt(o)/i;return n.invert=function(t,e){var n=a-e;return[Math.atan2(t,n)/i,$((o-(t*t+n*n)*i*i)/(2*i))]},n}function Xt(){function n(t,e){xo+=a*t-o*e,o=t,a=e}var r,i,o,a;Ao.point=function(t,e){Ao.point=n,r=o=t,i=a=e},Ao.lineEnd=function(){n(r,i)}}function Zt(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function Jt(t,e){oo+=t,ao+=e,++so}function te(){function n(t,e){var n=t-o,r=e-a,i=Math.sqrt(n*n+r*r);uo+=i*(o+t)/2,lo+=i*(a+e)/2,co+=i,Jt(o=t,a=e)}var o,a;So.point=function(t,e){So.point=n,Jt(o=t,a=e)}}function ee(){So.point=Jt}function ne(){function n(t,e){var n=t-o,r=e-a,i=Math.sqrt(n*n+r*r);uo+=i*(o+t)/2,lo+=i*(a+e)/2,co+=i,fo+=(i=a*t-o*e)*(o+t),ho+=i*(a+e),po+=3*i,Jt(o=t,a=e)}var r,i,o,a;So.point=function(t,e){So.point=n,Jt(r=o=t,i=a=e)},So.lineEnd=function(){n(r,i)}}function re(k){function e(i){function t(t,e){t=k(t,e),i.point(t[0],t[1])}function e(){g=NaN,x.point=n,i.lineStart()}function n(t,e){var n=At([t,e]),r=k(t,e);D(g,v,p,m,y,b,g=r[0],v=r[1],p=t,m=n[0],y=n[1],b=n[2],w,i),i.point(g,v)}function r(){x.point=t,i.lineEnd()}function o(){e(),x.point=a,x.lineEnd=s}function a(t,e){n(u=t,e),l=g,c=v,f=m,h=y,d=b,x.point=n}function s(){D(g,v,p,m,y,b,l,c,u,f,h,d,w,i),(x.lineEnd=r)()}var u,l,c,f,h,d,p,g,v,m,y,b,x={point:t,lineStart:e,lineEnd:r,polygonStart:function(){i.polygonStart(),x.lineStart=o},polygonEnd:function(){i.polygonEnd(),x.lineStart=e}};return x}function D(t,e,n,r,i,o,a,s,u,l,c,f,h,d){var p=a-t,g=s-e,v=p*p+g*g;if(4*_<v&&h--){var m=r+l,y=i+c,b=o+f,x=Math.sqrt(m*m+y*y+b*b),w=Math.asin(b/=x),C=Math.abs(Math.abs(b)-1)<wi?(n+u)/2:Math.atan2(y,m),T=k(C,w),M=T[0],A=T[1],E=M-t,S=A-e,N=g*E-p*S;(_<N*N/v||.3<Math.abs((p*E+g*S)/v-.5)||r*l+i*c+o*f<L)&&(D(t,e,n,r,i,o,M,A,C,m/=x,y/=x,b,h,d),d.point(M,A),D(M,A,C,m,y,b,a,s,u,l,c,f,h,d))}}var _=.5,L=Math.cos(30*Ti),w=16;return e.precision=function(t){return arguments.length?(w=0<(_=t*t)&&16,e):Math.sqrt(_)},e}function ie(t){this.stream=t}function oe(t){return ae(function(){return t})()}function ae(t){function e(t){return[(t=s(t[0]*Ti,t[1]*Ti))[0]*h+u,l-t[1]*h]}function n(t){return(t=s.invert((t[0]-u)/h,(l-t[1])/h))&&[t[0]*Mi,t[1]*Mi]}function r(){s=Wt(a=ue(m,y,b),o);var t=o(g,v);return u=d-t[0]*h,l=p+t[1]*h,i()}function i(){return c&&(c.valid=!1,c=null),e}var o,a,s,u,l,c,f=re(function(t,e){return[(t=o(t,e))[0]*h+u,l-t[1]*h]}),h=150,d=480,p=250,g=0,v=0,m=0,y=0,b=0,x=vo,w=ct,C=null,T=null;return e.stream=function(t){return c&&(c.valid=!1),n=a,r=x(f(w(t))),(e=new ie(r)).point=function(t,e){e=n(t*Ti,e*Ti),t=e[0],r.point(xi<t?t-2*xi:t<-xi?t+2*xi:t,e[1])},(c=e).valid=!0,c;var n,r,e},e.clipAngle=function(t){return arguments.length?(x=null==t?(C=t,vo):function(i){function d(t,e){return Math.cos(t)*Math.cos(e)>E}function p(t,e,n){var r=[1,0,0],i=St(At(t),At(e)),o=Et(i,i),a=i[0],s=o-a*a;if(!s)return!n&&t;var u=E*o/s,l=-E*a/s,c=St(r,i),f=kt(r,u);Nt(f,kt(i,l));var h=c,d=Et(f,h),p=Et(h,h),g=d*d-p*(Et(f,f)-1);if(!(g<0)){var v=Math.sqrt(g),m=kt(h,(-d-v)/p);if(Nt(m,f),m=_t(m),!n)return m;var y,b=t[0],x=e[0],w=t[1],C=e[1];x<b&&(y=b,b=x,x=y);var T=x-b,M=Math.abs(T-xi)<wi;if(!M&&C<w&&(y=w,w=C,C=y),M||T<wi?M?0<w+C^m[1]<(Math.abs(m[0]-b)<wi?w:C):w<=m[1]&&m[1]<=C:xi<T^(b<=m[0]&&m[0]<=x)){var A=kt(h,(-d+v)/p);return Nt(A,f),[m,_t(A)]}}}function g(t,e){var n=v?i:xi-i,r=0;return t<-n?r|=1:n<t&&(r|=2),e<-n?r|=4:n<e&&(r|=8),r}var E=Math.cos(i),v=0<E,e=[i,0],m=Math.abs(E)>wi;return qt(d,function(s){var u,l,c,f,h;return{lineStart:function(){f=c=!1,h=1},point:function(t,e){var n,r=[t,e],i=d(t,e),o=v?i?0:g(t,e):i?g(t+(t<0?xi:-xi),e):0;if(!u&&(f=c=i)&&s.lineStart(),i!==c&&(n=p(u,r),(Lt(u,n)||Lt(r,n))&&(r[0]+=wi,r[1]+=wi,i=d(r[0],r[1]))),i!==c)h=0,i?(s.lineStart(),n=p(r,u),s.point(n[0],n[1])):(n=p(u,r),s.point(n[0],n[1]),s.lineEnd()),u=n;else if(m&&u&&v^i){var a;o&l||!(a=p(r,u,!0))||(h=0,v?(s.lineStart(),s.point(a[0][0],a[0][1]),s.point(a[1][0],a[1][1]),s.lineEnd()):(s.point(a[1][0],a[1][1]),s.lineEnd(),s.lineStart(),s.point(a[0][0],a[0][1])))}!i||u&&Lt(u,r)||s.point(r[0],r[1]),u=r,c=i,l=o},lineEnd:function(){c&&s.lineEnd(),u=null},clean:function(){return h|(f&&c)<<1}}},he(i,6*Ti),function(t){return Ot(e,t)})}((C=+t)*Ti),i()):C},e.clipExtent=function(t){return arguments.length?(w=(T=t)?Qt(t[0][0],t[0][1],t[1][0],t[1][1]):ct,i()):T},e.scale=function(t){return arguments.length?(h=+t,r()):h},e.translate=function(t){return arguments.length?(d=+t[0],p=+t[1],r()):[d,p]},e.center=function(t){return arguments.length?(g=t[0]%360*Ti,v=t[1]%360*Ti,r()):[g*Mi,v*Mi]},e.rotate=function(t){return arguments.length?(m=t[0]%360*Ti,y=t[1]%360*Ti,b=2<t.length?t[2]%360*Ti:0,r()):[m*Mi,y*Mi,b*Mi]},Or.rebind(e,f,"precision"),function(){return o=t.apply(this,arguments),e.invert=o.invert&&n,r()}}function se(t,e){return[t,e]}function ue(t,e,n){return t?e||n?Wt(ce(t),fe(e,n)):ce(t):e||n?fe(e,n):se}function le(n){return function(t,e){return[xi<(t+=n)?t-2*xi:t<-xi?t+2*xi:t,e]}}function ce(t){var e=le(t);return e.invert=le(-t),e}function fe(t,e){function n(t,e){var n=Math.cos(e),r=Math.cos(t)*n,i=Math.sin(t)*n,o=Math.sin(e),a=o*s+r*u;return[Math.atan2(i*l-a*c,r*s-o*u),$(a*l+i*c)]}var s=Math.cos(t),u=Math.sin(t),l=Math.cos(e),c=Math.sin(e);return n.invert=function(t,e){var n=Math.cos(e),r=Math.cos(t)*n,i=Math.sin(t)*n,o=Math.sin(e),a=o*l-i*c;return[Math.atan2(i*l+o*c,r*s+a*u),$(a*s-r*u)]},n}function he(s,u){var l=Math.cos(s),c=Math.sin(s);return function(t,e,n,r){var i=n*u;null!=t?(t=de(l,t),e=de(l,e),(0<n?t<e:e<t)&&(t+=2*n*xi)):(t=s+2*n*xi,e=s-.5*i);for(var o,a=t;0<n?e<a:a<e;a-=i)r.point((o=_t([l,-c*Math.cos(a),-c*Math.sin(a)]))[0],o[1])}}function de(t,e){var n=At(e);n[0]-=t,Dt(n);var r=_(-n[1]);return((-n[2]<0?-r:r)+2*Math.PI-wi)%(2*Math.PI)}function pe(t,e,n){var r=Or.range(t,e-wi,n).concat(e);return function(e){return r.map(function(t){return[e,t]})}}function ge(t,e,n){var r=Or.range(t,e-wi,n).concat(e);return function(e){return r.map(function(t){return[t,e]})}}function ve(t){return t.source}function me(t){return t.target}function ye(o,a){function t(t,e){var n=Math.cos(t),r=Math.cos(e),i=o(n*r);return[i*r*Math.sin(t),i*Math.sin(e)]}return t.invert=function(t,e){var n=Math.sqrt(t*t+e*e),r=a(n),i=Math.sin(r),o=Math.cos(r);return[Math.atan2(t*i,n*o),Math.asin(n&&e*i/n)]},t}function be(t,e){function n(t,e){var n=Math.abs(Math.abs(e)-xi/2)<wi?0:a/Math.pow(i(e),o);return[n*Math.sin(o*t),a-n*Math.cos(o*t)]}var r=Math.cos(t),i=function(t){return Math.tan(xi/4+t/2)},o=t===e?Math.sin(t):Math.log(r/Math.cos(e))/Math.log(i(e)/i(t)),a=r*Math.pow(i(t),o)/o;return o?(n.invert=function(t,e){var n=a-e,r=D(o)*Math.sqrt(t*t+n*n);return[Math.atan2(t,n)/o,2*Math.atan(Math.pow(a/r,1/o))-xi/2]},n):we}function xe(t,e){function n(t,e){var n=o-e;return[n*Math.sin(i*t),o-n*Math.cos(i*t)]}var r=Math.cos(t),i=t===e?Math.sin(t):(r-Math.cos(e))/(e-t),o=r/i+t;return Math.abs(i)<wi?se:(n.invert=function(t,e){var n=o-e;return[Math.atan2(t,n)/i,o-D(i)*Math.sqrt(t*t+n*n)]},n)}function we(t,e){return[t,Math.log(Math.tan(xi/4+e/2))]}function Ce(t){var i,o=oe(t),a=o.scale,s=o.translate,u=o.clipExtent;return o.scale=function(){var t=a.apply(o,arguments);return t===o?i?o.clipExtent(null):o:t},o.translate=function(){var t=s.apply(o,arguments);return t===o?i?o.clipExtent(null):o:t},o.clipExtent=function(t){var e=u.apply(o,arguments);if(e===o){if(i=null==t){var n=xi*a(),r=s();u([[r[0]-n,r[1]-n],[r[0]+n,r[1]+n]])}}else i&&(e=null);return e},o.clipExtent(null)}function Te(t,e){var n=Math.cos(e)*Math.sin(t);return[Math.log((1+n)/(1-n))/2,Math.atan2(Math.tan(e),Math.cos(t))]}function Me(l){function e(t){function e(){r.push("M",d(l(i),p))}for(var n,r=[],i=[],o=-1,a=t.length,s=lt(c),u=lt(f);++o<a;)h.call(this,n=t[o],o)?i.push([+s.call(this,n,o),+u.call(this,n,o)]):i.length&&(e(),i=[]);return i.length&&e(),r.length?r.join(""):null}var c=Ae,f=Ee,h=It,d=Se,n=d.key,p=.7;return e.x=function(t){return arguments.length?(c=t,e):c},e.y=function(t){return arguments.length?(f=t,e):f},e.defined=function(t){return arguments.length?(h=t,e):h},e.interpolate=function(t){return arguments.length?(n="function"==typeof t?d=t:(d=$o.get(t)||Se).key,e):n},e.tension=function(t){return arguments.length?(p=t,e):p},e}function Ae(t){return t[0]}function Ee(t){return t[1]}function Se(t){return t.join("L")}function Ne(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e<n;)i.push("V",(r=t[e])[1],"H",r[0]);return i.join("")}function ke(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e<n;)i.push("H",(r=t[e])[0],"V",r[1]);return i.join("")}function De(t,e){if(e.length<1||t.length!=e.length&&t.length!=e.length+2)return Se(t);var n=t.length!=e.length,r="",i=t[0],o=t[1],a=e[0],s=a,u=1;if(n&&(r+="Q"+(o[0]-2*a[0]/3)+","+(o[1]-2*a[1]/3)+","+o[0]+","+o[1],i=t[1],u=2),1<e.length){s=e[1],o=t[u],u++,r+="C"+(i[0]+a[0])+","+(i[1]+a[1])+","+(o[0]-s[0])+","+(o[1]-s[1])+","+o[0]+","+o[1];for(var l=2;l<e.length;l++,u++)o=t[u],s=e[l],r+="S"+(o[0]-s[0])+","+(o[1]-s[1])+","+o[0]+","+o[1]}if(n){var c=t[u];r+="Q"+(o[0]+2*s[0]/3)+","+(o[1]+2*s[1]/3)+","+c[0]+","+c[1]}return r}function _e(t,e){for(var n,r=[],i=(1-e)/2,o=t[0],a=t[1],s=1,u=t.length;++s<u;)n=o,o=a,a=t[s],r.push([i*(a[0]-n[0]),i*(a[1]-n[1])]);return r}function Le(t){if(t.length<3)return Se(t);var e=1,n=t.length,r=t[0],i=r[0],o=r[1],a=[i,i,i,(r=t[1])[0]],s=[o,o,o,r[1]],u=[i,",",o,"L",Ge(Io,a),",",Ge(Io,s)];for(t.push(t[n-1]);++e<=n;)r=t[e],a.shift(),a.push(r[0]),s.shift(),s.push(r[1]),Fe(u,a,s);return t.pop(),u.push("L",r),u.join("")}function Ge(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function Fe(t,e,n){t.push("C",Ge(Po,e),",",Ge(Po,n),",",Ge(Ro,e),",",Ge(Ro,n),",",Ge(Io,e),",",Ge(Io,n))}function $e(t,e){return(e[1]-t[1])/(e[0]-t[0])}function Pe(t){for(var e,n,r,i,o=[],a=function(t){for(var e=0,n=t.length-1,r=[],i=t[0],o=t[1],a=r[0]=$e(i,o);++e<n;)r[e]=(a+(a=$e(i=o,o=t[e+1])))/2;return r[e]=a,r}(t),s=-1,u=t.length-1;++s<u;)e=$e(t[s],t[s+1]),Math.abs(e)<1e-6?a[s]=a[s+1]=0:9<(i=(n=a[s]/e)*n+(r=a[s+1]/e)*r)&&(i=3*e/Math.sqrt(i),a[s]=i*n,a[s+1]=i*r);for(s=-1;++s<=u;)i=(t[Math.min(u,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+a[s]*a[s])),o.push([i||0,a[s]*i||0]);return o}function Re(t,e,n){return(n[0]-e[0])*(t[1]-e[1])<(n[1]-e[1])*(t[0]-e[0])}function Ie(t,e,n,r){var i=t[0],o=n[0],a=e[0]-i,s=r[0]-o,u=t[1],l=n[1],c=e[1]-u,f=r[1]-l,h=(s*(u-l)-f*(i-o))/(f*a-s*c);return[i+h*a,u+h*c]}function Ve(t){var e=t[0],n=t[t.length-1];return!(e[0]-n[0]||e[1]-n[1])}function je(t,r){var e={list:t.map(function(t,e){return{index:e,x:t[0],y:t[1]}}).sort(function(t,e){return t.y<e.y?-1:t.y>e.y?1:t.x<e.x?-1:t.x>e.x?1:0}),bottomSite:null},n={list:[],leftEnd:null,rightEnd:null,init:function(){n.leftEnd=n.createHalfEdge(null,"l"),n.rightEnd=n.createHalfEdge(null,"l"),n.leftEnd.r=n.rightEnd,n.rightEnd.l=n.leftEnd,n.list.unshift(n.leftEnd,n.rightEnd)},createHalfEdge:function(t,e){return{edge:t,side:e,vertex:null,l:null,r:null}},insert:function(t,e){e.l=t,e.r=t.r,t.r.l=e,t.r=e},leftBound:function(t){for(var e=n.leftEnd;(e=e.r)!=n.rightEnd&&i.rightOf(e,t););return e.l},del:function(t){t.l.r=t.r,t.r.l=t.l,t.edge=null},right:function(t){return t.r},left:function(t){return t.l},leftRegion:function(t){return null==t.edge?e.bottomSite:t.edge.region[t.side]},rightRegion:function(t){return null==t.edge?e.bottomSite:t.edge.region[jo[t.side]]}},i={bisect:function(t,e){var n={region:{l:t,r:e},ep:{l:null,r:null}},r=e.x-t.x,i=e.y-t.y,o=0<r?r:-r,a=0<i?i:-i;return n.c=t.x*r+t.y*i+.5*(r*r+i*i),a<o?(n.a=1,n.b=i/r,n.c/=r):(n.b=1,n.a=r/i,n.c/=i),n},intersect:function(t,e){var n=t.edge,r=e.edge;if(!n||!r||n.region.r==r.region.r)return null;var i=n.a*r.b-n.b*r.a;if(Math.abs(i)<1e-10)return null;var o,a,s=(n.c*r.b-r.c*n.b)/i,u=(r.c*n.a-n.c*r.a)/i,l=n.region.r,c=r.region.r;l.y<c.y||l.y==c.y&&l.x<c.x?(o=t,a=n):(o=e,a=r);var f=s>=a.region.r.x;return f&&"l"===o.side||!f&&"r"===o.side?null:{x:s,y:u}},rightOf:function(t,e){var n=t.edge,r=n.region.r,i=e.x>r.x;if(i&&"l"===t.side)return 1;if(!i&&"r"===t.side)return 0;if(1===n.a){var o=e.y-r.y,a=e.x-r.x,s=0,u=0;if(!i&&n.b<0||i&&0<=n.b?u=s=o>=n.b*a:(u=e.x+e.y*n.b>n.c,n.b<0&&(u=!u),u||(s=1)),!s){var l=r.x-n.region.l.x;u=n.b*(a*a-o*o)<l*o*(1+2*a/l+n.b*n.b),n.b<0&&(u=!u)}}else{var c=n.c-n.a*e.x,f=e.y-c,h=e.x-r.x,d=c-r.y;u=h*h+d*d<f*f}return"l"===t.side?u:!u},endPoint:function(t,e,n){t.ep[e]=n,t.ep[jo[e]]&&r(t)},distance:function(t,e){var n=t.x-e.x,r=t.y-e.y;return Math.sqrt(n*n+r*r)}},s={list:[],insert:function(t,e,n){t.vertex=e,t.ystar=e.y+n;for(var r=0,i=s.list,o=i.length;r<o;r++){var a=i[r];if(!(t.ystar>a.ystar||t.ystar==a.ystar&&e.x>a.vertex.x))break}i.splice(r,0,t)},del:function(t){for(var e=0,n=s.list,r=n.length;e<r&&n[e]!=t;++e);n.splice(e,1)},empty:function(){return 0===s.list.length},nextEvent:function(t){for(var e=0,n=s.list,r=n.length;e<r;++e)if(n[e]==t)return n[e+1];return null},min:function(){var t=s.list[0];return{x:t.vertex.x,y:t.ystar}},extractMin:function(){return s.list.shift()}};n.init(),e.bottomSite=e.list.shift();for(var o,a,u,l,c,f,h,d,p,g,v,m,y,b=e.list.shift();;)if(s.empty()||(o=s.min()),b&&(s.empty()||b.y<o.y||b.y==o.y&&b.x<o.x))a=n.leftBound(b),u=n.right(a),h=n.rightRegion(a),m=i.bisect(h,b),f=n.createHalfEdge(m,"l"),n.insert(a,f),(g=i.intersect(a,f))&&(s.del(a),s.insert(a,g,i.distance(g,b))),a=f,f=n.createHalfEdge(m,"r"),n.insert(a,f),(g=i.intersect(f,u))&&s.insert(f,g,i.distance(g,b)),b=e.list.shift();else{if(s.empty())break;a=s.extractMin(),l=n.left(a),u=n.right(a),c=n.right(u),h=n.leftRegion(a),d=n.rightRegion(u),v=a.vertex,i.endPoint(a.edge,a.side,v),i.endPoint(u.edge,u.side,v),n.del(a),s.del(u),n.del(u),y="l",h.y>d.y&&(p=h,h=d,d=p,y="r"),m=i.bisect(h,d),f=n.createHalfEdge(m,y),n.insert(l,f),i.endPoint(m,jo[y],v),(g=i.intersect(l,f))&&(s.del(l),s.insert(l,g,i.distance(g,h))),(g=i.intersect(f,c))&&s.insert(f,g,i.distance(g,h))}for(a=n.right(n.leftEnd);a!=n.rightEnd;a=n.right(a))r(a.edge)}function qe(t){return t.x}function He(t){return t.y}function ze(t,e){t=Or.rgb(t),e=Or.rgb(e);var n=t.r,r=t.g,i=t.b,o=e.r-n,a=e.g-r,s=e.b-i;return function(t){return"#"+rt(Math.round(n+o*t))+rt(Math.round(r+a*t))+rt(Math.round(i+s*t))}}function Ke(t,e){var n,r={},i={};for(n in t)n in e?r[n]=Ye(t[n],e[n]):i[n]=t[n];for(n in e)n in t||(i[n]=e[n]);return function(t){for(n in r)i[n]=r[n](t);return i}}function Oe(e,n){return n-=e=+e,function(t){return e+n*t}}function Qe(t,e){var n,r,i,o,a,s=0,u=[],l=[];for(t+="",e+="",qo.lastIndex=0,r=0;n=qo.exec(e);++r)n.index&&u.push(e.substring(s,n.index)),l.push({i:u.length,x:n[0]}),u.push(null),s=qo.lastIndex;for(s<e.length&&u.push(e.substring(s)),r=0,o=l.length;(n=qo.exec(t))&&r<o;++r)if((a=l[r]).x==n[0]){if(a.i)if(null==u[a.i+1])for(u[a.i-1]+=a.x,u.splice(a.i,1),i=r+1;i<o;++i)l[i].i--;else for(u[a.i-1]+=a.x+u[a.i+1],u.splice(a.i,2),i=r+1;i<o;++i)l[i].i-=2;else if(null==u[a.i+1])u[a.i]=a.x;else for(u[a.i]=a.x+u[a.i+1],u.splice(a.i+1,1),i=r+1;i<o;++i)l[i].i--;l.splice(r,1),o--,r--}else a.x=Oe(parseFloat(n[0]),parseFloat(a.x));for(;r<o;)a=l.pop(),null==u[a.i+1]?u[a.i]=a.x:(u[a.i]=a.x+u[a.i+1],u.splice(a.i+1,1)),o--;return 1===u.length?null==u[0]?(a=l[0].x,function(t){return a(t)+""}):function(){return e}:function(t){for(r=0;r<o;++r)u[(a=l[r]).i]=a.x(t);return u.join("")}}function Ye(t,e){for(var n,r=Or.interpolators.length;0<=--r&&!(n=Or.interpolators[r](t,e)););return n}function We(t,e){var n,r=[],i=[],o=t.length,a=e.length,s=Math.min(t.length,e.length);for(n=0;n<s;++n)r.push(Ye(t[n],e[n]));for(;n<o;++n)i[n]=t[n];for(;n<a;++n)i[n]=e[n];return function(t){for(n=0;n<s;++n)i[n]=r[n](t);return i}}function Be(e){return function(t){return 1-e(1-t)}}function Ue(e){return function(t){return.5*(t<.5?e(2*t):2-e(2-2*t))}}function Xe(t){return t*t}function Ze(t){return t*t*t}function Je(t){if(t<=0)return 0;if(1<=t)return 1;var e=t*t,n=e*t;return 4*(t<.5?n:3*(t-e)+n-.75)}function tn(t){return 1-Math.cos(t*xi/2)}function en(t){return Math.pow(2,10*(t-1))}function nn(t){return 1-Math.sqrt(1-t*t)}function rn(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function on(e,n){return n-=e,function(t){return Math.round(e+n*t)}}function an(t){var e,n,r,i=[t.a,t.b],o=[t.c,t.d],a=un(i),s=sn(i,o),u=un(((e=o)[0]+=(r=-s)*(n=i)[0],e[1]+=r*n[1],e))||0;i[0]*o[1]<o[0]*i[1]&&(i[0]*=-1,i[1]*=-1,a*=-1,s*=-1),this.rotate=(a?Math.atan2(i[1],i[0]):Math.atan2(-o[0],o[1]))*Mi,this.translate=[t.e,t.f],this.scale=[a,u],this.skew=u?Math.atan2(s,u)*Mi:0}function sn(t,e){return t[0]*e[0]+t[1]*e[1]}function un(t){var e=Math.sqrt(sn(t,t));return e&&(t[0]/=e,t[1]/=e),e}function ln(t,e){var r,i=[],o=[],n=Or.transform(t),a=Or.transform(e),s=n.translate,u=a.translate,l=n.rotate,c=a.rotate,f=n.skew,h=a.skew,d=n.scale,p=a.scale;return s[0]!=u[0]||s[1]!=u[1]?(i.push("translate(",null,",",null,")"),o.push({i:1,x:Oe(s[0],u[0])},{i:3,x:Oe(s[1],u[1])})):u[0]||u[1]?i.push("translate("+u+")"):i.push(""),l!=c?(180<l-c?c+=360:180<c-l&&(l+=360),o.push({i:i.push(i.pop()+"rotate(",null,")")-2,x:Oe(l,c)})):c&&i.push(i.pop()+"rotate("+c+")"),f!=h?o.push({i:i.push(i.pop()+"skewX(",null,")")-2,x:Oe(f,h)}):h&&i.push(i.pop()+"skewX("+h+")"),d[0]!=p[0]||d[1]!=p[1]?(r=i.push(i.pop()+"scale(",null,",",null,")"),o.push({i:r-4,x:Oe(d[0],p[0])},{i:r-2,x:Oe(d[1],p[1])})):(1!=p[0]||1!=p[1])&&i.push(i.pop()+"scale("+p+")"),r=o.length,function(t){for(var e,n=-1;++n<r;)i[(e=o[n]).i]=e.x(t);return i.join("")}}function cn(e,n){return n=n-(e=+e)?1/(n-e):0,function(t){return(t-e)*n}}function fn(e,n){return n=n-(e=+e)?1/(n-e):0,function(t){return Math.max(0,Math.min(1,(t-e)*n))}}function hn(t){for(var e=t.source,n=t.target,r=function(t,e){if(t===e)return t;for(var n=dn(t),r=dn(e),i=n.pop(),o=r.pop(),a=null;i===o;)a=i,i=n.pop(),o=r.pop();return a}(e,n),i=[e];e!==r;)e=e.parent,i.push(e);for(var o=i.length;n!==r;)i.splice(o,0,n),n=n.parent;return i}function dn(t){for(var e=[],n=t.parent;null!=n;)e.push(t),n=(t=n).parent;return e.push(t),e}function pn(t){t.fixed|=2}function gn(t){t.fixed&=-7}function vn(t){t.fixed|=4,t.px=t.x,t.py=t.y}function mn(t){t.fixed&=-5}function yn(t,e){return Or.rebind(t,e,"sort","children","value"),(t.nodes=t).links=Cn,t}function bn(t){return t.children}function xn(t){return t.value}function wn(t,e){return e.value-t.value}function Cn(t){return Or.merge(t.map(function(e){return(e.children||[]).map(function(t){return{source:e,target:t}})}))}function Tn(t){return t.x}function Mn(t){return t.y}function An(t,e,n){t.y0=e,t.y=n}function En(t){return Or.range(t.length)}function Sn(t){for(var e=-1,n=t[0].length,r=[];++e<n;)r[e]=0;return r}function Nn(t){for(var e,n=1,r=0,i=t[0][1],o=t.length;n<o;++n)(e=t[n][1])>i&&(r=n,i=e);return r}function kn(t){return t.reduce(Dn,0)}function Dn(t,e){return t+e[1]}function _n(t,e){return Ln(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function Ln(t,e){for(var n=-1,r=+t[0],i=(t[1]-r)/e,o=[];++n<=e;)o[n]=i*n+r;return o}function Gn(t){return[Or.min(t),Or.max(t)]}function Fn(t,e){return t.parent==e.parent?1:2}function $n(t){var e=t.children;return e&&e.length?e[0]:t._tree.thread}function Pn(t){var e,n=t.children;return n&&(e=n.length)?n[e-1]:t._tree.thread}function Rn(t,e){var n=t.children;if(n&&(i=n.length))for(var r,i,o=-1;++o<i;)0<e(r=Rn(n[o],e),t)&&(t=r);return t}function In(t,e){return t.x-e.x}function Vn(t,e){return e.x-t.x}function jn(t,e){return t.depth-e.depth}function qn(t,u){!function t(e,n){var r=e.children;if(r&&(o=r.length))for(var i,o,a=null,s=-1;++s<o;)t(i=r[s],a),a=i;u(e,n)}(t,null)}function Hn(t,e,n){t=t._tree;var r=n/((e=e._tree).number-t.number);t.change+=r,e.change-=r,e.shift+=n,e.prelim+=n,e.mod+=n}function zn(t,e){return t.value-e.value}function Kn(t,e){var n=t._pack_next;(t._pack_next=e)._pack_prev=t,(e._pack_next=n)._pack_prev=e}function On(t,e){(t._pack_next=e)._pack_prev=t}function Qn(t,e){var n=e.x-t.x,r=e.y-t.y,i=t.r+e.r;return n*n+r*r<.999*i*i}function Yn(t){function e(t){c=Math.min(t.x-t.r,c),f=Math.max(t.x+t.r,f),h=Math.min(t.y-t.r,h),d=Math.max(t.y+t.r,d)}if((n=t.children)&&(l=n.length)){var n,r,i,o,a,s,u,l,c=1/0,f=-1/0,h=1/0,d=-1/0;if(n.forEach(Wn),(r=n[0]).x=-r.r,r.y=0,e(r),1<l&&((i=n[1]).x=i.r,i.y=0,e(i),2<l))for(Un(r,i,o=n[2]),e(o),Kn(r,o),Kn(r._pack_prev=o,i),i=r._pack_next,a=3;a<l;a++){Un(r,i,o=n[a]);var p=0,g=1,v=1;for(s=i._pack_next;s!==i;s=s._pack_next,g++)if(Qn(s,o)){p=1;break}if(1==p)for(u=r._pack_prev;u!==s._pack_prev&&!Qn(u,o);u=u._pack_prev,v++);p?(g<v||g==v&&i.r<r.r?On(r,i=s):On(r=u,i),a--):(Kn(r,o),e(i=o))}var m=(c+f)/2,y=(h+d)/2,b=0;for(a=0;a<l;a++)(o=n[a]).x-=m,o.y-=y,b=Math.max(b,o.r+Math.sqrt(o.x*o.x+o.y*o.y));t.r=b,n.forEach(Bn)}}function Wn(t){t._pack_next=t._pack_prev=t}function Bn(t){delete t._pack_next,delete t._pack_prev}function Un(t,e,n){var r=t.r+n.r,i=e.x-t.x,o=e.y-t.y;if(r&&(i||o)){var a=e.r+n.r,s=i*i+o*o,u=.5+((r*=r)-(a*=a))/(2*s),l=Math.sqrt(Math.max(0,2*a*(r+s)-(r-=s)*r-a*a))/(2*s);n.x=t.x+u*i+l*o,n.y=t.y+u*o-l*i}else n.x=t.x+r,n.y=t.y}function Xn(t){return{x:t.x,y:t.y,dx:t.dx,dy:t.dy}}function Zn(t,e){var n=t.x+e[3],r=t.y+e[0],i=t.dx-e[1]-e[3],o=t.dy-e[0]-e[2];return i<0&&(n+=i/2,i=0),o<0&&(r+=o/2,o=0),{x:n,y:r,dx:i,dy:o}}function Jn(t){var e=t[0],n=t[t.length-1];return e<n?[e,n]:[n,e]}function tr(t){return t.rangeExtent?t.rangeExtent():Jn(t.range())}function er(t,e,n,r){var i=n(t[0],t[1]),o=r(e[0],e[1]);return function(t){return o(i(t))}}function nr(t,e){var n,r=0,i=t.length-1,o=t[r],a=t[i];return a<o&&(n=r,r=i,i=n,n=o,o=a,a=n),t[r]=e.floor(o),t[i]=e.ceil(a),t}function rr(n,t,e,r){var i=[],o=[],a=0,s=Math.min(n.length,t.length)-1;for(n[s]<n[0]&&(n=n.slice().reverse(),t=t.slice().reverse());++a<=s;)i.push(e(n[a-1],n[a])),o.push(r(t[a-1],t[a]));return function(t){var e=Or.bisect(n,t,1,s)-1;return o[e](i[e](t))}}function ir(t,e){return Or.rebind(t,e,"range","rangeRound","interpolate","clamp")}function or(t,e){return nr(t,(n=ar(t,e)[2])?{floor:function(t){return Math.floor(t/n)*n},ceil:function(t){return Math.ceil(t/n)*n}}:Xo);var n}function ar(t,e){null==e&&(e=10);var n=Jn(t),r=n[1]-n[0],i=Math.pow(10,Math.floor(Math.log(r/e)/Math.LN10)),o=e/r*i;return o<=.15?i*=10:o<=.35?i*=5:o<=.75&&(i*=2),n[0]=Math.ceil(n[0]/i)*i,n[1]=Math.floor(n[1]/i)*i+.5*i,n[2]=i,n}function sr(t,e){return Or.range.apply(Or,ar(t,e))}function ur(t,e,n){var c=-Math.floor(Math.log(ar(t,e)[2])/Math.LN10+.01);return Or.format(n?n.replace(Yi,function(t,e,n,r,i,o,a,s,u,l){return[e,n,r,i,o,a,s,u||"."+(c-2*("%"===l)),l].join("")}):",."+c+"f")}function lr(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function cr(t){return t.innerRadius}function fr(t){return t.outerRadius}function hr(t){return t.startAngle}function dr(t){return t.endAngle}function pr(t){for(var e,n,r,i=-1,o=t.length;++i<o;)n=(e=t[i])[0],r=e[1]+ia,e[0]=n*Math.cos(r),e[1]=n*Math.sin(r);return t}function gr(p){function e(t){function e(){o.push("M",x(p(s),T),C,w(p(a.reverse()),T),"Z")}for(var n,r,i,o=[],a=[],s=[],u=-1,l=t.length,c=lt(g),f=lt(m),h=g===v?function(){return r}:lt(v),d=m===y?function(){return i}:lt(y);++u<l;)b.call(this,n=t[u],u)?(a.push([r=+c.call(this,n,u),i=+f.call(this,n,u)]),s.push([+h.call(this,n,u),+d.call(this,n,u)])):a.length&&(e(),a=[],s=[]);return a.length&&e(),o.length?o.join(""):null}var g=Ae,v=Ae,m=0,y=Ee,b=It,x=Se,n=x.key,w=x,C="L",T=.7;return e.x=function(t){return arguments.length?(g=v=t,e):v},e.x0=function(t){return arguments.length?(g=t,e):g},e.x1=function(t){return arguments.length?(v=t,e):v},e.y=function(t){return arguments.length?(m=y=t,e):y},e.y0=function(t){return arguments.length?(m=t,e):m},e.y1=function(t){return arguments.length?(y=t,e):y},e.defined=function(t){return arguments.length?(b=t,e):b},e.interpolate=function(t){return arguments.length?(n="function"==typeof t?x=t:(x=$o.get(t)||Se).key,w=x.reverse||x,C=x.closed?"M":"L",e):n},e.tension=function(t){return arguments.length?(T=t,e):T},e}function vr(t){return t.radius}function mr(t){return[t.x,t.y]}function yr(){return 64}function br(){return"circle"}function xr(t){var e=Math.sqrt(t/xi);return"M0,"+e+"A"+e+","+e+" 0 1,1 0,"+-e+"A"+e+","+e+" 0 1,1 0,"+e+"Z"}function wr(t,e){return si(t,fa),t.id=e,t}function Cr(){var t=this.__transition__;t&&++t.active}function Tr(t,r,i,o){var a=t.id;return M(t,"function"==typeof i?function(t,e,n){t.__transition__[a].tween.set(r,o(i.call(t,t.__data__,e,n)))}:(i=o(i),function(t){t.__transition__[a].tween.set(r,i)}))}function Mr(t){return null==t&&(t=""),function(){this.textContent=t}}function Ar(c,f,h,t){var d=c.__transition__||(c.__transition__={active:0,count:0}),p=d[h];if(!p){var r=t.time;p=d[h]={tween:new b,time:r,ease:t.ease,delay:t.delay,duration:t.duration},++d.count,Or.timer(function(t){function e(t){return d.active>h?i():(d.active=h,p.event&&p.event.start.call(c,o,f),p.tween.forEach(function(t,e){(e=e.call(c,o,f))&&l.push(e)}),n(t)?1:void pt(n,0,r))}function n(t){if(d.active!==h)return i();for(var e=(t-s)/u,n=a(e),r=l.length;0<r;)l[--r].call(c,n);return 1<=e?(p.event&&p.event.end.call(c,o,f),i()):void 0}function i(){return--d.count?delete d[h]:delete c.__transition__,1}var o=c.__data__,a=p.ease,s=p.delay,u=p.duration,l=[];return s<=t?e(t):void pt(e,s,r)},0,r)}}function Er(t,e){t.attr("transform",function(t){return"translate("+e(t)+",0)"})}function Sr(t,e){t.attr("transform",function(t){return"translate(0,"+e(t)+")"})}function Nr(){this._=new Date(1<arguments.length?Date.UTC.apply(this,arguments):arguments[0])}function kr(r,o,a){function t(t){var e=r(t),n=i(e,1);return t-e<n-t?e:n}function s(t){return o(t=r(new ya(t-1)),1),t}function i(t,e){return o(t=new ya(+t),e),t}function u(t,e,n){var r=s(t),i=[];if(1<n)for(;r<e;)a(r)%n||i.push(new Date(+r)),o(r,1);else for(;r<e;)i.push(new Date(+r)),o(r,1);return i}(r.floor=r).round=t,r.ceil=s,r.offset=i,r.range=u;var e=r.utc=Dr(r);return(e.floor=e).round=Dr(t),e.ceil=Dr(s),e.offset=Dr(i),e.range=function(t,e,n){try{var r=new(ya=Nr);return r._=t,u(r,e,n)}finally{ya=Date}},r}function Dr(r){return function(t,e){try{var n=new(ya=Nr);return n._=t,r(n,e)._}finally{ya=Date}}}function _r(s){function t(t){for(var e,n,r,i=[],o=-1,a=0;++o<u;)37===s.charCodeAt(o)&&(i.push(s.substring(a,o)),null!=(n=Ga[e=s.charAt(++o)])&&(e=s.charAt(++o)),(r=Fa[e])&&(e=r(t,null==n?"e"===e?" ":"0":n)),i.push(e),a=o+1);return i.push(s.substring(a,o)),i.join("")}var u=s.length;return t.parse=function(t){var e={y:1900,m:0,d:1,H:0,M:0,S:0,L:0};if(Lr(e,s,t,0)!=t.length)return null;"p"in e&&(e.H=e.H%12+12*e.p);var n=new ya;return"j"in e?n.setFullYear(e.y,0,e.j):"w"in e&&("W"in e||"U"in e)?(n.setFullYear(e.y,0,1),n.setFullYear(e.y,0,"W"in e?(e.w+6)%7+7*e.W-(n.getDay()+5)%7:e.w+7*e.U-(n.getDay()+6)%7)):n.setFullYear(e.y,e.m,e.d),n.setHours(e.H,e.M,e.S,e.L),n},t.toString=function(){return s},t}function Lr(t,e,n,r){for(var i,o,a,s=0,u=e.length,l=n.length;s<u;){if(l<=r)return-1;if(37===(i=e.charCodeAt(s++))){if(a=e.charAt(s++),!(o=$a[a in Ga?e.charAt(s++):a])||(r=o(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}function Gr(t){return new RegExp("^(?:"+t.map(Or.requote).join("|")+")","i")}function Fr(t){for(var e=new b,n=-1,r=t.length;++n<r;)e.set(t[n].toLowerCase(),n);return e}function $r(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o<n?new Array(n-o+1).join(e)+i:i)}function Pr(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Rr(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Ir(t){function e(t){try{var e=new(ya=Nr);return e._=t,n(e)}finally{ya=Date}}var n=_r(t);return e.parse=function(t){try{ya=Nr;var e=n.parse(t);return e&&e._}finally{ya=Date}},e.toString=n.toString,e}function Vr(t){return t.toISOString()}function jr(e,i,t){function a(t){return e(t)}function s(t,e){var n=(t[1]-t[0])/e,r=Or.bisect(Va,n);return r==Va.length?[i.year,ar(t.map(function(t){return t/31536e6}),e)[2]]:r?i[n/Va[r-1]<Va[r]/n?r-1:r]:[Ha,ar(t,e)[2]]}return a.invert=function(t){return qr(e.invert(t))},a.domain=function(t){return arguments.length?(e.domain(t),a):e.domain().map(qr)},a.nice=function(e,n){function r(t){return!isNaN(t)&&!e.range(t,qr(+t+1),n).length}var t=a.domain(),i=Jn(t),o=null==e?s(i,10):"number"==typeof e&&s(i,e);return o&&(e=o[0],n=o[1]),a.domain(nr(t,1<n?{floor:function(t){for(;r(t=e.floor(t));)t=qr(t-1);return t},ceil:function(t){for(;r(t=e.ceil(t));)t=qr(+t+1);return t}}:e))},a.ticks=function(t,e){var n=Jn(a.domain()),r=null==t?s(n,10):"number"==typeof t?s(n,t):!t.range&&[{range:t},e];return r&&(t=r[0],e=r[1]),t.range(n[0],qr(+n[1]+1),e)},a.tickFormat=function(){return t},a.copy=function(){return jr(e.copy(),i,t)},ir(a,e)}function qr(t){return new Date(t)}function Hr(r){return function(t){for(var e=r.length-1,n=r[e];!n[1](t);)n=r[--e];return n[0](t)}}function zr(t){return JSON.parse(t.responseText)}function Kr(t){var e=Wr.createRange();return e.selectNode(Wr.body),e.createContextualFragment(t.responseText)}var Or={version:"3.3.1"};Date.now||(Date.now=function(){return+new Date});var Qr=[].slice,Yr=function(t){return Qr.call(t)},Wr=document,Br=Wr.documentElement,Ur=window;try{Yr(Br.childNodes)[0].nodeType}catch(t){Yr=function(t){for(var e=t.length,n=new Array(e);e--;)n[e]=t[e];return n}}try{Wr.createElement("div").style.setProperty("opacity",0,"")}catch(t){var Xr=Ur.Element.prototype,Zr=Xr.setAttribute,Jr=Xr.setAttributeNS,ti=Ur.CSSStyleDeclaration.prototype,ei=ti.setProperty;Xr.setAttribute=function(t,e){Zr.call(this,t,e+"")},Xr.setAttributeNS=function(t,e,n){Jr.call(this,t,e,n+"")},ti.setProperty=function(t,e,n){ei.call(this,t,e+"",n)}}Or.ascending=function(t,e){return t<e?-1:e<t?1:e<=t?0:NaN},Or.descending=function(t,e){return e<t?-1:t<e?1:t<=e?0:NaN},Or.min=function(t,e){var n,r,i=-1,o=t.length;if(1===arguments.length){for(;++i<o&&!(null!=(n=t[i])&&n<=n);)n=void 0;for(;++i<o;)null!=(r=t[i])&&r<n&&(n=r)}else{for(;++i<o&&!(null!=(n=e.call(t,t[i],i))&&n<=n);)n=void 0;for(;++i<o;)null!=(r=e.call(t,t[i],i))&&r<n&&(n=r)}return n},Or.max=function(t,e){var n,r,i=-1,o=t.length;if(1===arguments.length){for(;++i<o&&!(null!=(n=t[i])&&n<=n);)n=void 0;for(;++i<o;)null!=(r=t[i])&&n<r&&(n=r)}else{for(;++i<o&&!(null!=(n=e.call(t,t[i],i))&&n<=n);)n=void 0;for(;++i<o;)null!=(r=e.call(t,t[i],i))&&n<r&&(n=r)}return n},Or.extent=function(t,e){var n,r,i,o=-1,a=t.length;if(1===arguments.length){for(;++o<a&&!(null!=(n=i=t[o])&&n<=n);)n=i=void 0;for(;++o<a;)null!=(r=t[o])&&(r<n&&(n=r),i<r&&(i=r))}else{for(;++o<a&&!(null!=(n=i=e.call(t,t[o],o))&&n<=n);)n=void 0;for(;++o<a;)null!=(r=e.call(t,t[o],o))&&(r<n&&(n=r),i<r&&(i=r))}return[n,i]},Or.sum=function(t,e){var n,r=0,i=t.length,o=-1;if(1===arguments.length)for(;++o<i;)isNaN(n=+t[o])||(r+=n);else for(;++o<i;)isNaN(n=+e.call(t,t[o],o))||(r+=n);return r},Or.mean=function(t,e){var n,r=t.length,i=0,o=-1,a=0;if(1===arguments.length)for(;++o<r;)s(n=t[o])&&(i+=(n-i)/++a);else for(;++o<r;)s(n=e.call(t,t[o],o))&&(i+=(n-i)/++a);return a?i:void 0},Or.quantile=function(t,e){var n=(t.length-1)*e+1,r=Math.floor(n),i=+t[r-1],o=n-r;return o?i+o*(t[r]-i):i},Or.median=function(t,e){return 1<arguments.length&&(t=t.map(e)),(t=t.filter(s)).length?Or.quantile(t.sort(Or.ascending),.5):void 0},Or.bisector=function(o){return{left:function(t,e,n,r){for(arguments.length<3&&(n=0),arguments.length<4&&(r=t.length);n<r;){var i=n+r>>>1;o.call(t,t[i],i)<e?n=i+1:r=i}return n},right:function(t,e,n,r){for(arguments.length<3&&(n=0),arguments.length<4&&(r=t.length);n<r;){var i=n+r>>>1;e<o.call(t,t[i],i)?r=i:n=i+1}return n}}};var ni=Or.bisector(function(t){return t});Or.bisectLeft=ni.left,Or.bisect=Or.bisectRight=ni.right,Or.shuffle=function(t){for(var e,n,r=t.length;r;)n=0|Math.random()*r--,e=t[r],t[r]=t[n],t[n]=e;return t},Or.permute=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},Or.pairs=function(t){for(var e=0,n=t.length-1,r=t[0],i=new Array(n<0?0:n);e<n;)i[e]=[r,r=t[++e]];return i},Or.zip=function(){if(!(r=arguments.length))return[];for(var t=-1,e=Or.min(arguments,a),n=new Array(e);++t<e;)for(var r,i=-1,o=n[t]=new Array(r);++i<r;)o[i]=arguments[i][t];return n},Or.transpose=function(t){return Or.zip.apply(Or,t)},Or.keys=function(t){var e=[];for(var n in t)e.push(n);return e},Or.values=function(t){var e=[];for(var n in t)e.push(t[n]);return e},Or.entries=function(t){var e=[];for(var n in t)e.push({key:n,value:t[n]});return e},Or.merge=function(t){return Array.prototype.concat.apply([],t)},Or.range=function(t,e,n){if(arguments.length<3&&(n=1,arguments.length<2&&(e=t,t=0)),1/0==(e-t)/n)throw new Error("infinite range");var r,i=[],o=function(t){for(var e=1;t*e%1;)e*=10;return e}(Math.abs(n)),a=-1;if(t*=o,e*=o,(n*=o)<0)for(;(r=t+n*++a)>e;)i.push(r/o);else for(;(r=t+n*++a)<e;)i.push(r/o);return i},Or.map=function(t){var n=new b;if(t instanceof b)t.forEach(function(t,e){n.set(t,e)});else for(var e in t)n.set(e,t[e]);return n},t(b,{has:function(t){return ri+t in this},get:function(t){return this[ri+t]},set:function(t,e){return this[ri+t]=e},remove:function(t){return(t=ri+t)in this&&delete this[t]},keys:function(){var e=[];return this.forEach(function(t){e.push(t)}),e},values:function(){var n=[];return this.forEach(function(t,e){n.push(e)}),n},entries:function(){var n=[];return this.forEach(function(t,e){n.push({key:t,value:e})}),n},forEach:function(t){for(var e in this)e.charCodeAt(0)===ii&&t.call(this,e.substring(1),this[e])}});var ri="\0",ii=ri.charCodeAt(0);Or.nest=function(){function f(n,t,r){if(r>=g.length)return d?d.call(p,t):h?t.sort(h):t;for(var e,i,o,a,s=-1,u=t.length,l=g[r++],c=new b;++s<u;)(a=c.get(e=l(i=t[s])))?a.push(i):c.set(e,[i]);return n?(i=n(),o=function(t,e){i.set(t,f(n,e,r))}):(i={},o=function(t,e){i[t]=f(n,e,r)}),c.forEach(o),i}var h,d,p={},g=[],e=[];return p.map=function(t,e){return f(e,t,0)},p.entries=function(t){return function n(t,r){if(r>=g.length)return t;var i=[],o=e[r++];return t.forEach(function(t,e){i.push({key:t,values:n(e,r)})}),o?i.sort(function(t,e){return o(t.key,e.key)}):i}(f(Or.map,t,0),0)},p.key=function(t){return g.push(t),p},p.sortKeys=function(t){return e[g.length-1]=t,p},p.sortValues=function(t){return h=t,p},p.rollup=function(t){return d=t,p},p},Or.set=function(t){var e=new l;if(t)for(var n=0,r=t.length;n<r;++n)e.add(t[n]);return e},t(l,{has:function(t){return ri+t in this},add:function(t){return this[ri+t]=!0,t},remove:function(t){return(t=ri+t)in this&&delete this[t]},values:function(){var e=[];return this.forEach(function(t){e.push(t)}),e},forEach:function(t){for(var e in this)e.charCodeAt(0)===ii&&t.call(this,e.substring(1))}}),Or.behavior={},Or.rebind=function(t,e){for(var n,r=1,i=arguments.length;++r<i;)t[n=arguments[r]]=o(t,e,e[n]);return t};var oi=["webkit","ms","moz","Moz","o","O"];Or.dispatch=function(){for(var t=new r,e=-1,n=arguments.length;++e<n;)t[arguments[e]]=u(t);return t},r.prototype.on=function(t,e){var n=t.indexOf("."),r="";if(0<=n&&(r=t.substring(n+1),t=t.substring(0,n)),t)return arguments.length<2?this[t].on(r):this[t].on(r,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(r,null);return this}},Or.event=null,Or.requote=function(t){return t.replace(ai,"\\$&")};var ai=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,si={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var n in e)t[n]=e[n]},ui=function(t,e){return e.querySelector(t)},li=function(t,e){return e.querySelectorAll(t)},ci=Br[e(Br,"matchesSelector")],fi=function(t,e){return ci.call(t,e)};"function"==typeof Sizzle&&(ui=function(t,e){return Sizzle(t,e)[0]||null},li=function(t,e){return Sizzle.uniqueSort(Sizzle(t,e))},fi=Sizzle.matchesSelector),Or.selection=function(){return gi};var hi=Or.selection.prototype=[];hi.select=function(t){var e,n,r,i,o=[];t=h(t);for(var a=-1,s=this.length;++a<s;){o.push(e=[]),e.parentNode=(r=this[a]).parentNode;for(var u=-1,l=r.length;++u<l;)(i=r[u])?(e.push(n=t.call(i,i.__data__,u,a)),n&&"__data__"in i&&(n.__data__=i.__data__)):e.push(null)}return f(o)},hi.selectAll=function(t){var e,n,r=[];t=g(t);for(var i=-1,o=this.length;++i<o;)for(var a=this[i],s=-1,u=a.length;++s<u;)(n=a[s])&&(r.push(e=Yr(t.call(n,n.__data__,s,i))),e.parentNode=n);return f(r)};var di={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};Or.ns={prefix:di,qualify:function(t){var e=t.indexOf(":"),n=t;return 0<=e&&(n=t.substring(0,e),t=t.substring(e+1)),di.hasOwnProperty(n)?{space:di[n],local:t}:t}},hi.attr=function(t,e){if(arguments.length<2){if("string"==typeof t){var n=this.node();return(t=Or.ns.qualify(t)).local?n.getAttributeNS(t.space,t.local):n.getAttribute(t)}for(e in t)this.each(d(e,t[e]));return this}return this.each(d(t,e))},hi.classed=function(t,e){if(arguments.length<2){if("string"==typeof t){var n=this.node(),r=(t=t.trim().split(/^|\s+/g)).length,i=-1;if(e=n.classList){for(;++i<r;)if(!e.contains(t[i]))return!1}else for(e=n.getAttribute("class");++i<r;)if(!v(t[i]).test(e))return!1;return!0}for(e in t)this.each(m(e,t[e]));return this}return this.each(m(t,e))},hi.style=function(t,e,n){var r=arguments.length;if(r<3){if("string"!=typeof t){for(n in r<2&&(e=""),t)this.each(x(n,t[n],e));return this}if(r<2)return Ur.getComputedStyle(this.node(),null).getPropertyValue(t);n=""}return this.each(x(t,e,n))},hi.property=function(t,e){if(arguments.length<2){if("string"==typeof t)return this.node()[t];for(e in t)this.each(n(e,t[e]));return this}return this.each(n(t,e))},hi.text=function(e){return arguments.length?this.each("function"==typeof e?function(){var t=e.apply(this,arguments);this.textContent=null==t?"":t}:null==e?function(){this.textContent=""}:function(){this.textContent=e}):this.node().textContent},hi.html=function(e){return arguments.length?this.each("function"==typeof e?function(){var t=e.apply(this,arguments);this.innerHTML=null==t?"":t}:null==e?function(){this.innerHTML=""}:function(){this.innerHTML=e}):this.node().innerHTML},hi.append=function(t){return t=w(t),this.select(function(){return this.appendChild(t.apply(this,arguments))})},hi.insert=function(t,e){return t=w(t),e=h(e),this.select(function(){return this.insertBefore(t.apply(this,arguments),e.apply(this,arguments))})},hi.remove=function(){return this.each(function(){var t=this.parentNode;t&&t.removeChild(this)})},hi.data=function(t,g){function e(t,e){var n,r,i,o=t.length,a=e.length,s=Math.min(o,a),u=new Array(a),l=new Array(a),c=new Array(o);if(g){var f,h=new b,d=new b,p=[];for(n=-1;++n<o;)f=g.call(r=t[n],r.__data__,n),h.has(f)?c[n]=r:h.set(f,r),p.push(f);for(n=-1;++n<a;)f=g.call(e,i=e[n],n),(r=h.get(f))?(u[n]=r).__data__=i:d.has(f)||(l[n]=C(i)),d.set(f,i),h.remove(f);for(n=-1;++n<o;)h.has(p[n])&&(c[n]=t[n])}else{for(n=-1;++n<s;)r=t[n],i=e[n],r?(r.__data__=i,u[n]=r):l[n]=C(i);for(;n<a;++n)l[n]=C(e[n]);for(;n<o;++n)c[n]=t[n]}l.update=u,l.parentNode=u.parentNode=c.parentNode=t.parentNode,v.push(l),m.push(u),y.push(c)}var n,r,i=-1,o=this.length;if(!arguments.length){for(t=new Array(o=(n=this[0]).length);++i<o;)(r=n[i])&&(t[i]=r.__data__);return t}var v=A([]),m=f([]),y=f([]);if("function"==typeof t)for(;++i<o;)e(n=this[i],t.call(n,n.parentNode.__data__,i));else for(;++i<o;)e(n=this[i],t);return m.enter=function(){return v},m.exit=function(){return y},m},hi.datum=function(t){return arguments.length?this.property("__data__",t):this.property("__data__")},hi.filter=function(t){var e,n,r,i=[];"function"!=typeof t&&(t=T(t));for(var o=0,a=this.length;o<a;o++){i.push(e=[]),e.parentNode=(n=this[o]).parentNode;for(var s=0,u=n.length;s<u;s++)(r=n[s])&&t.call(r,r.__data__,s)&&e.push(r)}return f(i)},hi.order=function(){for(var t=-1,e=this.length;++t<e;)for(var n,r=this[t],i=r.length-1,o=r[i];0<=--i;)(n=r[i])&&(o&&o!==n.nextSibling&&o.parentNode.insertBefore(n,o),o=n);return this},hi.sort=function(t){t=function(n){return arguments.length||(n=Or.ascending),function(t,e){return t&&e?n(t.__data__,e.__data__):!t-!e}}.apply(this,arguments);for(var e=-1,n=this.length;++e<n;)this[e].sort(t);return this.order()},hi.each=function(r){return M(this,function(t,e,n){r.call(t,t.__data__,e,n)})},hi.call=function(t){var e=Yr(arguments);return t.apply(e[0]=this,e),this},hi.empty=function(){return!this.node()},hi.node=function(){for(var t=0,e=this.length;t<e;t++)for(var n=this[t],r=0,i=n.length;r<i;r++){var o=n[r];if(o)return o}return null},hi.size=function(){var t=0;return this.each(function(){++t}),t};var pi=[];Or.selection.enter=A,(Or.selection.enter.prototype=pi).append=hi.append,pi.empty=hi.empty,pi.node=hi.node,pi.call=hi.call,pi.size=hi.size,pi.select=function(t){for(var e,n,r,i,o,a=[],s=-1,u=this.length;++s<u;){r=(i=this[s]).update,a.push(e=[]),e.parentNode=i.parentNode;for(var l=-1,c=i.length;++l<c;)(o=i[l])?(e.push(r[l]=n=t.call(i.parentNode,o.__data__,l,s)),n.__data__=o.__data__):e.push(null)}return f(a)},pi.insert=function(t,e){return arguments.length<2&&(a=this,e=function(t,e,n){var r,i=a[n].update,o=i.length;for(n!=u&&(u=n,s=0),s<=e&&(s=e+1);!(r=i[s])&&++s<o;);return r}),hi.insert.call(this,t,e);var a,s,u},Or.select=function(t){var e=["string"==typeof t?ui(t,Wr):t];return e.parentNode=Br,f([e])},Or.selectAll=function(t){var e=Yr("string"==typeof t?li(t,Wr):t);return e.parentNode=Br,f([e])};var gi=Or.select(Br);hi.on=function(t,e,n){var r=arguments.length;if(r<3){if("string"!=typeof t){for(n in r<2&&(e=!1),t)this.each(E(n,t[n],e));return this}if(r<2)return(r=this.node()["__on"+t])&&r._;n=!1}return this.each(E(t,e,n))};var vi=Or.map({mouseenter:"mouseover",mouseleave:"mouseout"});vi.forEach(function(t){"on"+t in Wr&&vi.remove(t)});var mi=e(Br.style,"userSelect"),yi=0;Or.mouse=function(t){return k(t,i())};var bi=/WebKit/.test(Ur.navigator.userAgent)?-1:0;Or.touches=function(n,t){return arguments.length<2&&(t=i().touches),t?Yr(t).map(function(t){var e=k(n,t);return e.identifier=t.identifier,e}):[]},Or.behavior.drag=function(){function e(){this.on("mousedown.drag",n).on("touchstart.drag",r)}function t(f,h,d,p){return function(){function r(){n.on(d+"."+e,null).on(p+"."+e,null),c(l&&Or.event.target===t),a({type:"dragend"})}var i,o=this.parentNode,a=g.of(this,arguments),t=Or.event.target,s=f(),e=null==s?"drag":"drag-"+s,u=h(o,s),l=0,n=Or.select(Ur).on(d+"."+e,function(){if(!o)return r();var t=h(o,s),e=t[0]-u[0],n=t[1]-u[1];l|=e|n,a({type:"drag",x:(u=t)[0]+i[0],y:t[1]+i[1],dx:e,dy:n})}).on(p+"."+e,r),c=F();v?i=[(i=v.apply(this,arguments)).x-u[0],i.y-u[1]]:i=[0,0],a({type:"dragstart"})}}var g=G(e,"drag","dragstart","dragend"),v=null,n=t(c,Or.mouse,"mousemove","mouseup"),r=t(function(){return Or.event.changedTouches[0].identifier},function(t,e){return Or.touches(t).filter(function(t){return t.identifier===e})[0]},"touchmove","touchend");return e.origin=function(t){return arguments.length?(v=t,e):v},Or.rebind(e,g,"on")};var xi=Math.PI,wi=1e-6,Ci=wi*wi,Ti=xi/180,Mi=180/xi,Ai=Math.SQRT2,Ei=2;Or.interpolateZoom=function(t,e){function n(t){var e,n=t*m;if(v){var r=R(g),i=s/(Ei*h)*(r*(P(e=Ai*n+g)/R(e))-P(g));return[o+i*l,a+i*c,s*r/R(Ai*n+g)]}return[o+t*l,a+t*c,s*Math.exp(Ai*n)]}var o=t[0],a=t[1],s=t[2],r=e[0],i=e[1],u=e[2],l=r-o,c=i-a,f=l*l+c*c,h=Math.sqrt(f),d=(u*u-s*s+4*f)/(2*s*Ei*h),p=(u*u-s*s-4*f)/(2*u*Ei*h),g=Math.log(Math.sqrt(d*d+1)-d),v=Math.log(Math.sqrt(p*p+1)-p)-g,m=(v||Math.log(u/s))/Ai;return n.duration=1e3*m,n},Or.behavior.zoom=function(){function e(t){t.on(A,i).on(ki+".zoom",r).on(E,s).on("dblclick.zoom",a).on(N,o)}function d(t){return[(t[0]-C.x)/C.k,(t[1]-C.y)/C.k]}function p(t){C.k=Math.max(M[0],Math.min(M[1],t))}function g(t,e){var n;e=[(n=e)[0]*C.k+C.x,n[1]*C.k+C.y],C.x+=t[0]-e[0],C.y+=t[1]-e[1]}function n(){h&&h.domain(f.range().map(function(t){return(t-C.x)/C.k}).map(f.invert)),w&&w.domain(x.range().map(function(t){return(t-C.y)/C.k}).map(x.invert))}function v(t){t({type:"zoomstart"})}function m(t){n(),t({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function y(t){t({type:"zoomend"})}function i(){var t=this,e=_.of(t,arguments),n=Or.event.target,r=0,i=Or.select(Ur).on(E,function(){r=1,g(Or.mouse(t),o),m(e)}).on(S,function(){i.on(E,Ur===t?s:null).on(S,null),a(r&&Or.event.target===n),y(e)}),o=d(Or.mouse(t)),a=F();Cr.call(t),v(e)}function o(){function s(){var t=Or.touches(c);return l=C.k,u={},t.forEach(function(t){u[t.identifier]=d(t)}),t}function t(){var t=Date.now(),e=s();if(1===e.length){if(t-b<500){var n=e[0],r=u[n.identifier];p(2*C.k),g(n,r),L(),m(f)}b=t}else if(1<e.length){n=e[0];var i=e[1],o=n[0]-i[0],a=n[1]-i[1];h=o*o+a*a}}var u,l,c=this,f=_.of(c,arguments),h=0,e=Or.select(Ur).on(k,function(){var t=Or.touches(c),e=t[0],n=u[e.identifier];if(r=t[1]){var r,i=u[r.identifier],o=Or.event.scale;if(null==o){var a=(a=r[0]-e[0])*a+(a=r[1]-e[1])*a;o=h&&Math.sqrt(a/h)}e=[(e[0]+r[0])/2,(e[1]+r[1])/2],n=[(n[0]+i[0])/2,(n[1]+i[1])/2],p(o*l)}b=null,g(e,n),m(f)}).on(D,function(){Or.event.touches.length?s():(e.on(k,null).on(D,null),n.on(A,i).on(N,o),r(),y(f))}),n=Or.select(c).on(A,null).on(N,t),r=F();Cr.call(c),t(),v(f)}function r(){var t=_.of(this,arguments);c?clearTimeout(c):(Cr.call(this),v(t)),c=setTimeout(function(){c=null,y(t)},50),L();var e=l||Or.mouse(this);u||(u=d(e)),p(Math.pow(2,.002*Si())*C.k),g(e,u),m(t)}function s(){u=null}function a(){var t=_.of(this,arguments),e=Or.mouse(this),n=d(e),r=Math.log(C.k)/Math.LN2;v(t),p(Math.pow(2,Or.event.shiftKey?Math.ceil(r)-1:Math.floor(r)+1)),g(e,n),m(t),y(t)}var u,l,c,b,f,h,x,w,C={x:0,y:0,k:1},T=[960,500],M=Ni,A="mousedown.zoom",E="mousemove.zoom",S="mouseup.zoom",N="touchstart.zoom",k="touchmove.zoom",D="touchend.zoom",_=G(e,"zoomstart","zoom","zoomend");return e.event=function(t){t.each(function(){var s=_.of(this,arguments),e=C;sa?Or.select(this).transition().each("start.zoom",function(){C=this.__chart__||{x:0,y:0,k:1},v(s)}).tween("zoom:zoom",function(){var r=T[0],t=T[1],i=r/2,o=t/2,a=Or.interpolateZoom([(i-C.x)/C.k,(o-C.y)/C.k,r/C.k],[(i-e.x)/e.k,(o-e.y)/e.k,r/e.k]);return function(t){var e=a(t),n=r/e[2];this.__chart__=C={x:i-e[0]*n,y:o-e[1]*n,k:n},m(s)}}).each("end.zoom",function(){y(s)}):(this.__chart__=C,v(s),m(s),y(s))})},e.translate=function(t){return arguments.length?(C={x:+t[0],y:+t[1],k:C.k},n(),e):[C.x,C.y]},e.scale=function(t){return arguments.length?(C={x:C.x,y:C.y,k:+t},n(),e):C.k},e.scaleExtent=function(t){return arguments.length?(M=null==t?Ni:[+t[0],+t[1]],e):M},e.center=function(t){return arguments.length?(l=t&&[+t[0],+t[1]],e):l},e.size=function(t){return arguments.length?(T=t&&[+t[0],+t[1]],e):T},e.x=function(t){return arguments.length?(f=(h=t).copy(),C={x:0,y:0,k:1},e):h},e.y=function(t){return arguments.length?(x=(w=t).copy(),C={x:0,y:0,k:1},e):w},Or.rebind(e,_,"on")};var Si,Ni=[0,1/0],ki="onwheel"in Wr?(Si=function(){return-Or.event.deltaY*(Or.event.deltaMode?120:1)},"wheel"):"onmousewheel"in Wr?(Si=function(){return Or.event.wheelDelta},"mousewheel"):(Si=function(){return-Or.event.detail},"MozMousePixelScroll");V.prototype.toString=function(){return this.rgb()+""},Or.hsl=function(t,e,n){return 1===arguments.length?t instanceof q?j(t.h,t.s,t.l):it(""+t,ot,j):j(+t,+e,+n)};var Di=q.prototype=new V;Di.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),j(this.h,this.s,this.l/t)},Di.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),j(this.h,this.s,t*this.l)},Di.rgb=function(){return H(this.h,this.s,this.l)},Or.hcl=function(t,e,n){return 1===arguments.length?t instanceof K?z(t.h,t.c,t.l):B(t instanceof Y?t.l:(t=at((t=Or.rgb(t)).r,t.g,t.b)).l,t.a,t.b):z(+t,+e,+n)};var _i=K.prototype=new V;_i.brighter=function(t){return z(this.h,this.c,Math.min(100,this.l+Li*(arguments.length?t:1)))},_i.darker=function(t){return z(this.h,this.c,Math.max(0,this.l-Li*(arguments.length?t:1)))},_i.rgb=function(){return O(this.h,this.c,this.l).rgb()},Or.lab=function(t,e,n){return 1===arguments.length?t instanceof Y?Q(t.l,t.a,t.b):t instanceof K?O(t.l,t.c,t.h):at((t=Or.rgb(t)).r,t.g,t.b):Q(+t,+e,+n)};var Li=18,Gi=.95047,Fi=1,$i=1.08883,Pi=Y.prototype=new V;Pi.brighter=function(t){return Q(Math.min(100,this.l+Li*(arguments.length?t:1)),this.a,this.b)},Pi.darker=function(t){return Q(Math.max(0,this.l-Li*(arguments.length?t:1)),this.a,this.b)},Pi.rgb=function(){return W(this.l,this.a,this.b)},Or.rgb=function(t,e,n){return 1===arguments.length?t instanceof nt?et(t.r,t.g,t.b):it(""+t,et,H):et(~~t,~~e,~~n)};var Ri=nt.prototype=new V;Ri.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,n=this.g,r=this.b;return e||n||r?(e&&e<30&&(e=30),n&&n<30&&(n=30),r&&r<30&&(r=30),et(Math.min(255,~~(e/t)),Math.min(255,~~(n/t)),Math.min(255,~~(r/t)))):et(30,30,30)},Ri.darker=function(t){return et(~~((t=Math.pow(.7,arguments.length?t:1))*this.r),~~(t*this.g),~~(t*this.b))},Ri.hsl=function(){return ot(this.r,this.g,this.b)},Ri.toString=function(){return"#"+rt(this.r)+rt(this.g)+rt(this.b)};var Ii=Or.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Ii.forEach(function(t,e){Ii.set(t,J(e))}),Or.functor=lt,Or.xhr=ft(ct),Or.dsv=function(i,o){function a(t,n,e){arguments.length<3&&(e=n,n=null);var r=Or.xhr(t,o,e);return r.row=function(t){return arguments.length?r.response(null==(n=t)?s:(e=t,function(t){return a.parse(t.responseText,e)})):n;var e},r.row(n)}function s(t){return a.parse(t.responseText)}function e(t){return t.map(u).join(i)}function u(t){return n.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}var n=new RegExp('["'+i+"\n]"),h=i.charCodeAt(0);return a.parse=function(t,r){var i;return a.parseRows(t,function(t,e){if(i)return i(t,e-1);var n=new Function("d","return {"+t.map(function(t,e){return JSON.stringify(t)+": d["+e+"]"}).join(",")+"}");i=r?function(t,e){return r(n(t),e)}:n})},a.parseRows=function(i,t){function e(){if(u<=l)return s;if(o)return o=!1,a;var t=l;if(34===i.charCodeAt(t)){for(var e=t;e++<u;)if(34===i.charCodeAt(e)){if(34!==i.charCodeAt(e+1))break;++e}return l=e+2,13===(n=i.charCodeAt(e+1))?(o=!0,10===i.charCodeAt(e+2)&&++l):10===n&&(o=!0),i.substring(t+1,e).replace(/""/g,'"')}for(;l<u;){var n,r=1;if(10===(n=i.charCodeAt(l++)))o=!0;else if(13===n)o=!0,10===i.charCodeAt(l)&&(++l,++r);else if(n!==h)continue;return i.substring(t,l-r)}return i.substring(t)}for(var n,o,a={},s={},r=[],u=i.length,l=0,c=0;(n=e())!==s;){for(var f=[];n!==a&&n!==s;)f.push(n),n=e();(!t||(f=t(f,c++)))&&r.push(f)}return r},a.format=function(t){if(Array.isArray(t[0]))return a.formatRows(t);var n=new l,r=[];return t.forEach(function(t){for(var e in t)n.has(e)||r.push(n.add(e))}),[r.map(u).join(i)].concat(t.map(function(e){return r.map(function(t){return u(e[t])}).join(i)})).join("\n")},a.formatRows=function(t){return t.map(e).join("\n")},a},Or.csv=Or.dsv(",","text/csv"),Or.tsv=Or.dsv("\t","text/tab-separated-values");var Vi,ji,qi,Hi,zi,Ki=Ur[e(Ur,"requestAnimationFrame")]||function(t){setTimeout(t,17)};Or.timer=function(t,e,n){var r=arguments.length;r<2&&(e=0),r<3&&(n=Date.now());var i={callback:t,time:n+e,next:null};ji?ji.next=i:Vi=i,ji=i,qi||(Hi=clearTimeout(Hi),qi=1,Ki(dt))},Or.timer.flush=function(){gt(),vt()};var Oi=[3,3],Qi=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"].map(function(t,e){var n=Math.pow(10,3*Math.abs(8-e));return{scale:8<e?function(t){return t/n}:function(t){return t*n},symbol:t}});Or.formatPrefix=function(t,e){var n=0;return t&&(t<0&&(t*=-1),e&&(t=Or.round(t,mt(t,e))),n=1+Math.floor(1e-12+Math.log(t)/Math.LN10),n=Math.max(-24,Math.min(24,3*Math.floor((n<=0?n+1:n-1)/3)))),Qi[8+n/3]},Or.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)},Or.format=function(t){var e=Yi.exec(t),u=e[1]||" ",l=e[2]||">",c=e[3]||"",f=e[4]||"",h=e[5],d=+e[6],p=e[7],g=e[8],v=e[9],m=1,y="",b=!1;switch(g&&(g=+g.substring(1)),(h||"0"===u&&"="===l)&&(h=u="0",l="=",p&&(d-=Math.floor((d-1)/4))),v){case"n":p=!0,v="g";break;case"%":m=100,y="%",v="f";break;case"p":m=100,y="%",v="r";break;case"b":case"o":case"x":case"X":"#"===f&&(f="0"+v.toLowerCase());case"c":case"d":b=!0,g=0;break;case"s":m=-1,v="r"}"#"===f?f="":"$"===f&&(f="$"),"r"!=v||g||(v="g"),null!=g&&("g"==v?g=Math.max(1,Math.min(21,g)):("e"==v||"f"==v)&&(g=Math.max(0,Math.min(20,g)))),v=Wi.get(v)||yt;var x=h&&p;return function(t){if(b&&t%1)return"";var e=t<0||0===t&&1/t<0?(t=-t,"-"):c;if(m<0){var n=Or.formatPrefix(t,g);t=n.scale(t),y=n.symbol}else t*=m;var r=(t=v(t,g)).lastIndexOf("."),i=r<0?t:t.substring(0,r),o=r<0?"":"."+t.substring(r+1);!h&&p&&(i=Bi(i));var a=f.length+i.length+o.length+(x?0:e.length),s=a<d?new Array(a=d-a+1).join(u):"";return x&&(i=Bi(s+i)),e+=f,t=i+o,("<"===l?e+t+s:">"===l?s+e+t:"^"===l?s.substring(0,a>>=1)+e+t+s.substring(a):e+(x?t:s+t))+y}};var Yi=/(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i,Wi=Or.map({b:function(t){return t.toString(2)},c:function(t){return String.fromCharCode(t)},o:function(t){return t.toString(8)},x:function(t){return t.toString(16)},X:function(t){return t.toString(16).toUpperCase()},g:function(t,e){return t.toPrecision(e)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},r:function(t,e){return(t=Or.round(t,mt(t,e))).toFixed(Math.max(0,Math.min(20,mt(t*(1+1e-15),e))))}}),Bi=ct;if(Oi){var Ui=Oi.length;Bi=function(t){for(var e=t.length,n=[],r=0,i=Oi[0];0<e&&0<i;)n.push(t.substring(e-=i,e+i)),i=Oi[r=(r+1)%Ui];return n.reverse().join(",")}}Or.geo={},bt.prototype={s:0,t:0,add:function(t){xt(t,this.t,Xi),xt(Xi.s,this.s,this),this.s?this.t+=Xi.t:this.s=Xi.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};var Xi=new bt;Or.geo.stream=function(t,e){t&&Zi.hasOwnProperty(t.type)?Zi[t.type](t,e):wt(t,e)};var Zi={Feature:function(t,e){wt(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)wt(n[r].geometry,e)}},Ji={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){Ct(t.coordinates,e,0)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)Ct(n[r],e,0)},Polygon:function(t,e){Tt(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)Tt(n[r],e)},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)wt(n[r],e)}};Or.geo.area=function(t){return to=0,Or.geo.stream(t,no),to};var to,eo=new bt,no={sphere:function(){to+=4*xi},point:c,lineStart:c,lineEnd:c,polygonStart:function(){eo.reset(),no.lineStart=Mt},polygonEnd:function(){var t=2*eo;to+=t<0?4*xi+t:t,no.lineStart=no.lineEnd=no.point=c}};Or.geo.bounds=function(){function c(t,e){b.push(x=[h=t,p=t]),e<d&&(d=e),g<e&&(g=e)}function r(t,e){var n=At([t*Ti,e*Ti]);if(m){var r=St(m,n),i=St([r[1],-r[0],0],r);Dt(i),i=_t(i);var o=t-v,a=0<o?1:-1,s=i[0]*Mi*a,u=180<Math.abs(o);if(u^(a*v<s&&s<a*t)){var l=i[1]*Mi;g<l&&(g=l)}else if(u^(a*v<(s=(s+360)%360-180)&&s<a*t)){(l=-i[1]*Mi)<d&&(d=l)}else e<d&&(d=e),g<e&&(g=e);u?t<v?f(h,t)>f(h,p)&&(p=t):f(t,p)>f(h,p)&&(h=t):h<=p?(t<h&&(h=t),p<t&&(p=t)):v<t?f(h,t)>f(h,p)&&(p=t):f(t,p)>f(h,p)&&(h=t)}else c(t,e);m=n,v=t}function t(){w.point=r}function e(){x[0]=h,x[1]=p,w.point=c,m=null}function n(t,e){if(m){var n=t-v;y+=180<Math.abs(n)?n+(0<n?360:-360):n}else a=t,s=e;no.point(t,e),r(t,e)}function i(){no.lineStart()}function o(){n(a,s),no.lineEnd(),Math.abs(y)>wi&&(h=-(p=180)),x[0]=h,x[1]=p,m=null}function f(t,e){return(e-=t)<0?e+360:e}function u(t,e){return t[0]-e[0]}function l(t,e){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}var h,d,p,g,v,a,s,m,y,b,x,w={point:c,lineStart:t,lineEnd:e,polygonStart:function(){w.point=n,w.lineStart=i,w.lineEnd=o,y=0,no.polygonStart()},polygonEnd:function(){no.polygonEnd(),w.point=c,w.lineStart=t,w.lineEnd=e,eo<0?(h=-(p=180),d=-(g=90)):wi<y?g=90:y<-wi&&(d=-90),x[0]=h,x[1]=p}};return function(t){if(g=p=-(h=d=1/0),b=[],Or.geo.stream(t,w),o=b.length){b.sort(u);for(var e=1,n=[s=b[0]];e<o;++e)l((i=b[e])[0],s)||l(i[1],s)?(f(s[0],i[1])>f(s[0],s[1])&&(s[1]=i[1]),f(i[0],s[1])>f(s[0],s[1])&&(s[0]=i[0])):n.push(s=i);for(var r,i,o,a=-1/0,s=(e=0,n[o=n.length-1]);e<=o;s=i,++e)i=n[e],(r=f(s[1],i[0]))>a&&(a=r,h=i[0],p=s[1])}return b=x=null,1/0===h||1/0===d?[[NaN,NaN],[NaN,NaN]]:[[h,d],[p,g]]}}(),Or.geo.centroid=function(t){ro=io=oo=ao=so=uo=lo=co=fo=ho=po=0,Or.geo.stream(t,go);var e=fo,n=ho,r=po,i=e*e+n*n+r*r;return i<Ci&&(e=uo,n=lo,r=co,io<wi&&(e=oo,n=ao,r=so),(i=e*e+n*n+r*r)<Ci)?[NaN,NaN]:[Math.atan2(n,e)*Mi,$(r/Math.sqrt(i))*Mi]};var ro,io,oo,ao,so,uo,lo,co,fo,ho,po,go={sphere:c,point:Gt,lineStart:$t,lineEnd:Pt,polygonStart:function(){go.lineStart=Rt},polygonEnd:function(){go.lineStart=$t}},vo=qt(It,function(f){var h,d=NaN,p=NaN,g=NaN;return{lineStart:function(){f.lineStart(),h=1},point:function(t,e){var n,r,i,o,a,s,u,l=0<t?xi:-xi,c=Math.abs(t-d);Math.abs(c-xi)<wi?(f.point(d,p=0<(p+e)/2?xi/2:-xi/2),f.point(g,p),f.lineEnd(),f.lineStart(),f.point(l,p),f.point(t,p),h=0):g!==l&&xi<=c&&(Math.abs(d-g)<wi&&(d-=g*wi),Math.abs(t-l)<wi&&(t-=l*wi),n=d,r=p,i=t,o=e,u=Math.sin(n-i),p=Math.abs(u)>wi?Math.atan((Math.sin(r)*(s=Math.cos(o))*Math.sin(i)-Math.sin(o)*(a=Math.cos(r))*Math.sin(n))/(a*s*u)):(r+o)/2,f.point(g,p),f.lineEnd(),f.lineStart(),f.point(l,p),h=0),f.point(d=t,p=e),g=l},lineEnd:function(){f.lineEnd(),d=p=NaN},clean:function(){return 2-h}}},function(t,e,n,r){var i;if(null==t)i=n*xi/2,r.point(-xi,i),r.point(0,i),r.point(xi,i),r.point(xi,0),r.point(xi,-i),r.point(0,-i),r.point(-xi,-i),r.point(-xi,0),r.point(-xi,i);else if(Math.abs(t[0]-e[0])>wi){var o=(t[0]<e[0]?1:-1)*xi;i=n*o/2,r.point(-o,i),r.point(0,i),r.point(o,i)}else r.point(e[0],e[1])},function(t){return Ot(mo,t)}),mo=[-xi,0],yo=1e9;Or.geo.clipExtent=function(){var e,n,r,i,o,a,s={stream:function(t){return o&&(o.valid=!1),(o=a(t)).valid=!0,o},extent:function(t){return arguments.length?(a=Qt(e=+t[0][0],n=+t[0][1],r=+t[1][0],i=+t[1][1]),o&&(o.valid=!1,o=null),s):[[e,n],[r,i]]}};return s.extent([[0,0],[960,500]])},(Or.geo.conicEqualArea=function(){return Bt(Ut)}).raw=Ut,Or.geo.albers=function(){return Or.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},Or.geo.albersUsa=function(){function i(t){var e=t[0],n=t[1];return r=null,o(e,n),r||(a(e,n),r)||s(e,n),r}var r,o,a,s,u=Or.geo.albers(),l=Or.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=Or.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),f={point:function(t,e){r=[t,e]}};return i.invert=function(t){var e=u.scale(),n=u.translate(),r=(t[0]-n[0])/e,i=(t[1]-n[1])/e;return(.12<=i&&i<.234&&-.425<=r&&r<-.214?l:.166<=i&&i<.234&&-.214<=r&&r<-.115?c:u).invert(t)},i.stream=function(t){var n=u.stream(t),r=l.stream(t),i=c.stream(t);return{point:function(t,e){n.point(t,e),r.point(t,e),i.point(t,e)},sphere:function(){n.sphere(),r.sphere(),i.sphere()},lineStart:function(){n.lineStart(),r.lineStart(),i.lineStart()},lineEnd:function(){n.lineEnd(),r.lineEnd(),i.lineEnd()},polygonStart:function(){n.polygonStart(),r.polygonStart(),i.polygonStart()},polygonEnd:function(){n.polygonEnd(),r.polygonEnd(),i.polygonEnd()}}},i.precision=function(t){return arguments.length?(u.precision(t),l.precision(t),c.precision(t),i):u.precision()},i.scale=function(t){return arguments.length?(u.scale(t),l.scale(.35*t),c.scale(t),i.translate(u.translate())):u.scale()},i.translate=function(t){if(!arguments.length)return u.translate();var e=u.scale(),n=+t[0],r=+t[1];return o=u.translate(t).clipExtent([[n-.455*e,r-.238*e],[n+.455*e,r+.238*e]]).stream(f).point,a=l.translate([n-.307*e,r+.201*e]).clipExtent([[n-.425*e+wi,r+.12*e+wi],[n-.214*e-wi,r+.234*e-wi]]).stream(f).point,s=c.translate([n-.205*e,r+.212*e]).clipExtent([[n-.214*e+wi,r+.166*e+wi],[n-.115*e-wi,r+.234*e-wi]]).stream(f).point,i},i.scale(1070)};var bo,xo,wo,Co,To,Mo,Ao={point:c,lineStart:c,lineEnd:c,polygonStart:function(){xo=0,Ao.lineStart=Xt},polygonEnd:function(){Ao.lineStart=Ao.lineEnd=Ao.point=c,bo+=Math.abs(xo/2)}},Eo={point:function(t,e){t<wo&&(wo=t),To<t&&(To=t),e<Co&&(Co=e),Mo<e&&(Mo=e)},lineStart:c,lineEnd:c,polygonStart:c,polygonEnd:c},So={point:Jt,lineStart:te,lineEnd:ee,polygonStart:function(){So.lineStart=ne},polygonEnd:function(){So.point=Jt,So.lineStart=te,So.lineEnd=ee}};Or.geo.transform=function(r){return{stream:function(t){var e=new ie(t);for(var n in r)e[n]=r[n];return e}}},ie.prototype={point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}},Or.geo.path=function(){function e(t){return t&&("function"==typeof u&&a.pointRadius(+u.apply(this,arguments)),s&&s.valid||(s=o(a)),Or.geo.stream(t,s)),a.result()}function r(){return s=null,e}var i,n,o,a,s,u=4.5;return e.area=function(t){return bo=0,Or.geo.stream(t,o(Ao)),bo},e.centroid=function(t){return oo=ao=so=uo=lo=co=fo=ho=po=0,Or.geo.stream(t,o(So)),po?[fo/po,ho/po]:co?[uo/co,lo/co]:so?[oo/so,ao/so]:[NaN,NaN]},e.bounds=function(t){return To=Mo=-(wo=Co=1/0),Or.geo.stream(t,o(Eo)),[[wo,Co],[To,Mo]]},e.projection=function(t){return arguments.length?(o=(i=t)?t.stream||(n=t,e=re(function(t,e){return n([t*Mi,e*Mi])}),function(n){var t=new ie(n=e(n));return t.point=function(t,e){n.point(t*Ti,e*Ti)},t}):ct,r()):i;var n,e},e.context=function(t){return arguments.length?(a=null==(n=t)?new function(){function t(t,e){a.push("M",t,",",e,o)}function e(t,e){a.push("M",t,",",e),s.point=n}function n(t,e){a.push("L",t,",",e)}function r(){s.point=t}function i(){a.push("Z")}var o=Zt(4.5),a=[],s={point:t,lineStart:function(){s.point=e},lineEnd:r,polygonStart:function(){s.lineEnd=i},polygonEnd:function(){s.lineEnd=r,s.point=t},pointRadius:function(t){return o=Zt(t),s},result:function(){if(a.length){var t=a.join("");return a=[],t}}};return s}:new function(n){function t(t,e){n.moveTo(t,e),n.arc(t,e,a,0,2*xi)}function e(t,e){n.moveTo(t,e),s.point=r}function r(t,e){n.lineTo(t,e)}function i(){s.point=t}function o(){n.closePath()}var a=4.5,s={point:t,lineStart:function(){s.point=e},lineEnd:i,polygonStart:function(){s.lineEnd=o},polygonEnd:function(){s.lineEnd=i,s.point=t},pointRadius:function(t){return a=t,s},result:c};return s}(t),"function"!=typeof u&&a.pointRadius(u),r()):n},e.pointRadius=function(t){return arguments.length?(u="function"==typeof t?t:(a.pointRadius(+t),+t),e):u},e.projection(Or.geo.albersUsa()).context(null)},Or.geo.projection=oe,Or.geo.projectionMutator=ae,(Or.geo.equirectangular=function(){return oe(se)}).raw=se.invert=se,Or.geo.rotation=function(e){function t(t){return(t=e(t[0]*Ti,t[1]*Ti))[0]*=Mi,t[1]*=Mi,t}return e=ue(e[0]%360*Ti,e[1]*Ti,2<e.length?e[2]*Ti:0),t.invert=function(t){return(t=e.invert(t[0]*Ti,t[1]*Ti))[0]*=Mi,t[1]*=Mi,t},t},Or.geo.circle=function(){function e(){var t="function"==typeof o?o.apply(this,arguments):o,n=ue(-t[0]*Ti,-t[1]*Ti,0).invert,r=[];return i(null,null,1,{point:function(t,e){r.push(t=n(t,e)),t[0]*=Mi,t[1]*=Mi}}),{type:"Polygon",coordinates:[r]}}var n,i,o=[0,0],r=6;return e.origin=function(t){return arguments.length?(o=t,e):o},e.angle=function(t){return arguments.length?(i=he((n=+t)*Ti,r*Ti),e):n},e.precision=function(t){return arguments.length?(i=he(n*Ti,(r=+t)*Ti),e):r},e.angle(90)},Or.geo.distance=function(t,e){var n,r=(e[0]-t[0])*Ti,i=t[1]*Ti,o=e[1]*Ti,a=Math.sin(r),s=Math.cos(r),u=Math.sin(i),l=Math.cos(i),c=Math.sin(o),f=Math.cos(o);return Math.atan2(Math.sqrt((n=f*a)*n+(n=l*c-u*f*s)*n),u*c+l*f*s)},Or.geo.graticule=function(){function e(){return{type:"MultiLineString",coordinates:t()}}function t(){return Or.range(Math.ceil(o/v)*v,i,v).map(h).concat(Or.range(Math.ceil(l/m)*m,u,m).map(d)).concat(Or.range(Math.ceil(r/p)*p,n,p).filter(function(t){return Math.abs(t%v)>wi}).map(c)).concat(Or.range(Math.ceil(s/g)*g,a,g).filter(function(t){return Math.abs(t%m)>wi}).map(f))}var n,r,i,o,a,s,u,l,c,f,h,d,p=10,g=p,v=90,m=360,y=2.5;return e.lines=function(){return t().map(function(t){return{type:"LineString",coordinates:t}})},e.outline=function(){return{type:"Polygon",coordinates:[h(o).concat(d(u).slice(1),h(i).reverse().slice(1),d(l).reverse().slice(1))]}},e.extent=function(t){return arguments.length?e.majorExtent(t).minorExtent(t):e.minorExtent()},e.majorExtent=function(t){return arguments.length?(o=+t[0][0],i=+t[1][0],l=+t[0][1],u=+t[1][1],i<o&&(t=o,o=i,i=t),u<l&&(t=l,l=u,u=t),e.precision(y)):[[o,l],[i,u]]},e.minorExtent=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],s=+t[0][1],a=+t[1][1],n<r&&(t=r,r=n,n=t),a<s&&(t=s,s=a,a=t),e.precision(y)):[[r,s],[n,a]]},e.step=function(t){return arguments.length?e.majorStep(t).minorStep(t):e.minorStep()},e.majorStep=function(t){return arguments.length?(v=+t[0],m=+t[1],e):[v,m]},e.minorStep=function(t){return arguments.length?(p=+t[0],g=+t[1],e):[p,g]},e.precision=function(t){return arguments.length?(y=+t,c=pe(s,a,90),f=ge(r,n,y),h=pe(l,u,90),d=ge(o,i,y),e):y},e.majorExtent([[-180,-90+wi],[180,90-wi]]).minorExtent([[-180,-80-wi],[180,80+wi]])},Or.geo.greatArc=function(){function e(){return{type:"LineString",coordinates:[n||i.apply(this,arguments),r||o.apply(this,arguments)]}}var n,r,i=ve,o=me;return e.distance=function(){return Or.geo.distance(n||i.apply(this,arguments),r||o.apply(this,arguments))},e.source=function(t){return arguments.length?(n="function"==typeof(i=t)?null:t,e):i},e.target=function(t){return arguments.length?(r="function"==typeof(o=t)?null:t,e):o},e.precision=function(){return arguments.length?e:0},e},Or.geo.interpolate=function(t,e){return n=t[0]*Ti,r=t[1]*Ti,i=e[0]*Ti,o=e[1]*Ti,a=Math.cos(r),s=Math.sin(r),u=Math.cos(o),l=Math.sin(o),c=a*Math.cos(n),f=a*Math.sin(n),h=u*Math.cos(i),d=u*Math.sin(i),p=2*Math.asin(Math.sqrt(I(o-r)+a*u*I(i-n))),g=1/Math.sin(p),(v=p?function(t){var e=Math.sin(t*=p)*g,n=Math.sin(p-t)*g,r=n*c+e*h,i=n*f+e*d,o=n*s+e*l;return[Math.atan2(i,r)*Mi,Math.atan2(o,Math.sqrt(r*r+i*i))*Mi]}:function(){return[n*Mi,r*Mi]}).distance=p,v;var n,r,i,o,a,s,u,l,c,f,h,d,p,g,v},Or.geo.length=function(t){return No=0,Or.geo.stream(t,ko),No};var No,ko={sphere:c,point:c,lineStart:function(){function n(t,e){var n=Math.sin(e*=Ti),r=Math.cos(e),i=Math.abs((t*=Ti)-a),o=Math.cos(i);No+=Math.atan2(Math.sqrt((i=r*Math.sin(i))*i+(i=u*n-s*r*o)*i),s*n+u*r*o),a=t,s=n,u=r}var a,s,u;ko.point=function(t,e){a=t*Ti,s=Math.sin(e*=Ti),u=Math.cos(e),ko.point=n},ko.lineEnd=function(){ko.point=ko.lineEnd=c}},lineEnd:c,polygonStart:c,polygonEnd:c},Do=ye(function(t){return Math.sqrt(2/(1+t))},function(t){return 2*Math.asin(t/2)});(Or.geo.azimuthalEqualArea=function(){return oe(Do)}).raw=Do;var _o=ye(function(t){var e=Math.acos(t);return e&&e/Math.sin(e)},ct);(Or.geo.azimuthalEquidistant=function(){return oe(_o)}).raw=_o,(Or.geo.conicConformal=function(){return Bt(be)}).raw=be,(Or.geo.conicEquidistant=function(){return Bt(xe)}).raw=xe;var Lo=ye(function(t){return 1/t},Math.atan);(Or.geo.gnomonic=function(){return oe(Lo)}).raw=Lo,we.invert=function(t,e){return[t,2*Math.atan(Math.exp(e))-xi/2]},(Or.geo.mercator=function(){return Ce(we)}).raw=we;var Go=ye(function(){return 1},Math.asin);(Or.geo.orthographic=function(){return oe(Go)}).raw=Go;var Fo=ye(function(t){return 1/(1+t)},function(t){return 2*Math.atan(t)});(Or.geo.stereographic=function(){return oe(Fo)}).raw=Fo,Te.invert=function(t,e){return[Math.atan2(P(t),Math.cos(e)),$(Math.sin(e)/R(t))]},(Or.geo.transverseMercator=function(){return Ce(Te)}).raw=Te,Or.geom={},Or.svg={},Or.svg.line=function(){return Me(ct)};var $o=Or.map({linear:Se,"linear-closed":function(t){return Se(t)+"Z"},step:function(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e<n;)i.push("H",(r[0]+(r=t[e])[0])/2,"V",r[1]);return 1<n&&i.push("H",r[0]),i.join("")},"step-before":Ne,"step-after":ke,basis:Le,"basis-open":function(t){if(t.length<4)return Se(t);for(var e,n=[],r=-1,i=t.length,o=[0],a=[0];++r<3;)e=t[r],o.push(e[0]),a.push(e[1]);for(n.push(Ge(Io,o)+","+Ge(Io,a)),--r;++r<i;)e=t[r],o.shift(),o.push(e[0]),a.shift(),a.push(e[1]),Fe(n,o,a);return n.join("")},"basis-closed":function(t){for(var e,n,r=-1,i=t.length,o=i+4,a=[],s=[];++r<4;)n=t[r%i],a.push(n[0]),s.push(n[1]);for(e=[Ge(Io,a),",",Ge(Io,s)],--r;++r<o;)n=t[r%i],a.shift(),a.push(n[0]),s.shift(),s.push(n[1]),Fe(e,a,s);return e.join("")},bundle:function(t,e){var n=t.length-1;if(n)for(var r,i,o=t[0][0],a=t[0][1],s=t[n][0]-o,u=t[n][1]-a,l=-1;++l<=n;)i=l/n,(r=t[l])[0]=e*r[0]+(1-e)*(o+i*s),r[1]=e*r[1]+(1-e)*(a+i*u);return Le(t)},cardinal:function(t,e){return t.length<3?Se(t):t[0]+De(t,_e(t,e))},"cardinal-open":function(t,e){return t.length<4?Se(t):t[1]+De(t.slice(1,t.length-1),_e(t,e))},"cardinal-closed":function(t,e){return t.length<3?Se(t):t[0]+De((t.push(t[0]),t),_e([t[t.length-2]].concat(t,[t[1]]),e))},monotone:function(t){return t.length<3?Se(t):t[0]+De(t,Pe(t))}});$o.forEach(function(t,e){e.key=t,e.closed=/-closed$/.test(t)});var Po=[0,2/3,1/3,0],Ro=[0,1/3,2/3,0],Io=[0,1/6,2/3,1/6];Or.geom.hull=function(t){function e(t){if(t.length<3)return[];var e,n,r,i,o,a,s,u,l,c,f,h,d,p,g,v,m,y,b,x,w,C,T=lt(_),M=lt(L),A=t.length,E=A-1,S=[],N=[],k=0;if(T===Ae&&L===Ee)e=t;else for(r=0,e=[];r<A;++r)e.push([+T.call(this,n=t[r],r),+M.call(this,n,r)]);for(r=1;r<A;++r)(e[r][1]<e[k][1]||e[r][1]==e[k][1]&&e[r][0]<e[k][0])&&(k=r);for(r=0;r<A;++r)r!==k&&(a=e[r][1]-e[k][1],o=e[r][0]-e[k][0],S.push({angle:Math.atan2(a,o),index:r}));for(S.sort(function(t,e){return t.angle-e.angle}),f=S[0].angle,c=S[0].index,l=0,r=1;r<E;++r){if(i=S[r].index,f==S[r].angle){if(o=e[c][0]-e[k][0],a=e[c][1]-e[k][1],(s=e[i][0]-e[k][0])*s+(u=e[i][1]-e[k][1])*u<=o*o+a*a){S[r].index=-1;continue}S[l].index=-1}f=S[r].angle,l=r,c=i}for(N.push(k),i=r=0;r<2;++i)-1<S[i].index&&(N.push(S[i].index),r++);for(h=N.length;i<E;++i)if(!(S[i].index<0)){for(;d=N[h-2],p=N[h-1],g=S[i].index,C=w=x=b=y=m=void 0,y=(m=(v=e)[d])[0],b=m[1],x=(m=v[p])[0],w=m[1],C=(m=v[g])[0],!(0<(m[1]-b)*(x-y)-(w-b)*(C-y));)--h;N[h++]=S[i].index}var D=[];for(r=h-1;0<=r;--r)D.push(t[N[r]]);return D}var _=Ae,L=Ee;return arguments.length?e(t):(e.x=function(t){return arguments.length?(_=t,e):_},e.y=function(t){return arguments.length?(L=t,e):L},e)},Or.geom.polygon=function(t){return si(t,Vo),t};var Vo=Or.geom.polygon.prototype=[];Vo.area=function(){for(var t,e=-1,n=this.length,r=this[n-1],i=0;++e<n;)t=r,r=this[e],i+=t[1]*r[0]-t[0]*r[1];return.5*i},Vo.centroid=function(t){var e,n,r=-1,i=this.length,o=0,a=0,s=this[i-1];for(arguments.length||(t=-1/(6*this.area()));++r<i;)e=s,s=this[r],n=e[0]*s[1]-s[0]*e[1],o+=(e[0]+s[0])*n,a+=(e[1]+s[1])*n;return[o*t,a*t]},Vo.clip=function(t){for(var e,n,r,i,o,a,s=Ve(t),u=-1,l=this.length-Ve(this),c=this[l-1];++u<l;){for(e=t.slice(),t.length=0,i=this[u],o=e[(r=e.length-s)-1],n=-1;++n<r;)Re(a=e[n],c,i)?(Re(o,c,i)||t.push(Ie(o,a,c,i)),t.push(a)):Re(o,c,i)&&t.push(Ie(o,a,c,i)),o=a;s&&t.push(t[0]),c=i}return t},Or.geom.delaunay=function(s){var e=s.map(function(){return[]}),u=[];return je(s,function(t){e[t.region.l.index].push(s[t.region.r.index])}),e.forEach(function(t,e){var n=s[e],r=n[0],i=n[1];t.forEach(function(t){t.angle=Math.atan2(t[0]-r,t[1]-i)}),t.sort(function(t,e){return t.angle-e.angle});for(var o=0,a=t.length-1;o<a;o++)u.push([n,t[o],t[o+1]])}),u},Or.geom.voronoi=function(t){function o(t){var m,e,n,l=t.map(function(){return[]}),r=lt(c),i=lt(f),o=t.length;if(r===Ae&&i===Ee)m=t;else for(m=new Array(o),n=0;n<o;++n)m[n]=[+r.call(this,e=t[n],n),+i.call(this,e,n)];if(je(m,function(t){var e,n,r,i,o,a;1===t.a&&0<=t.b?(e=t.ep.r,n=t.ep.l):(e=t.ep.l,n=t.ep.r),1===t.a?(o=e?e.y:-1e6,r=t.c-t.b*o,a=n?n.y:1e6,i=t.c-t.b*a):(r=e?e.x:-1e6,o=t.c-t.a*r,i=n?n.x:1e6,a=t.c-t.a*i);var s=[r,o],u=[i,a];l[t.region.l.index].push(s,u),l[t.region.r.index].push(s,u)}),(l=l.map(function(e,t){var n=m[t][0],r=m[t][1],i=e.map(function(t){return Math.atan2(t[0]-n,t[1]-r)}),o=Or.range(e.length).sort(function(t,e){return i[t]-i[e]});return o.filter(function(t,e){return!e||i[t]-i[o[e-1]]>wi}).map(function(t){return e[t]})})).forEach(function(t,e){var n=t.length;if(!n)return t.push([-1e6,-1e6],[-1e6,1e6],[1e6,1e6],[1e6,-1e6]);if(!(2<n)){var r=m[e],i=t[0],o=t[1],a=r[0],s=r[1],u=i[0],l=i[1],c=o[0],f=o[1],h=Math.abs(c-u),d=f-l;if(Math.abs(d)<wi){var p=s<l?-1e6:1e6;t.push([-1e6,p],[1e6,p])}else if(h<wi){var g=a<u?-1e6:1e6;t.push([g,-1e6],[g,1e6])}else{p=(c-u)*(l-s)<(u-a)*(f-l)?1e6:-1e6;var v=Math.abs(d)-h;Math.abs(v)<wi?t.push([d<0?p:-p,p]):(0<v&&(p*=-1),t.push([-1e6,p],[1e6,p]))}}}),a)for(n=0;n<o;++n)a.clip(l[n]);for(n=0;n<o;++n)l[n].point=t[n];return l}var c=Ae,f=Ee,a=null;return arguments.length?o(t):(o.x=function(t){return arguments.length?(c=t,o):c},o.y=function(t){return arguments.length?(f=t,o):f},o.clipExtent=function(t){if(!arguments.length)return a&&[a[0],a[2]];if(null==t)a=null;else{var e=+t[0][0],n=+t[0][1],r=+t[1][0],i=+t[1][1];a=Or.geom.polygon([[e,n],[e,i],[r,i],[r,n]])}return o},o.size=function(t){return arguments.length?o.clipExtent(t&&[[0,0],t]):a&&a[2]},o.links=function(r){var t,e,n,i=r.map(function(){return[]}),o=[],a=lt(c),s=lt(f),u=r.length;if(a===Ae&&s===Ee)t=r;else for(t=new Array(u),n=0;n<u;++n)t[n]=[+a.call(this,e=r[n],n),+s.call(this,e,n)];return je(t,function(t){var e=t.region.l.index,n=t.region.r.index;i[e][n]||(i[e][n]=i[n][e]=!0,o.push({source:r[e],target:r[n]}))}),o},o.triangles=function(t){if(c===Ae&&f===Ee)return Or.geom.delaunay(t);for(var e,n=new Array(a),r=lt(c),i=lt(f),o=-1,a=t.length;++o<a;)(n[o]=[+r.call(this,e=t[o],o),+i.call(this,e,o)]).data=e;return Or.geom.delaunay(n).map(function(t){return t.map(function(t){return t.data})})},o)};var jo={l:"r",r:"l"};Or.geom.quadtree=function(t,b,x,w,C){function e(t){function d(t,e,n,r,i,o,a,s){if(!isNaN(n)&&!isNaN(r))if(t.leaf){var u=t.x,l=t.y;if(null!=u)if(Math.abs(u-n)+Math.abs(l-r)<.01)f(t,e,n,r,i,o,a,s);else{var c=t.point;t.x=t.y=t.point=null,f(t,c,u,l,i,o,a,s),f(t,e,n,r,i,o,a,s)}else t.x=n,t.y=r,t.point=e}else f(t,e,n,r,i,o,a,s)}function f(t,e,n,r,i,o,a,s){var u=.5*(i+a),l=.5*(o+s),c=u<=n,f=l<=r,h=(f<<1)+c;t.leaf=!1,c?i=u:a=u,f?o=l:s=l,d(t=t.nodes[h]||(t.nodes[h]={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){d(y,t,+c(t,++i),+h(t,i),a,s,u,l)}}),e,n,r,i,o,a,s)}var e,n,r,i,o,a,s,u,l,c=lt(M),h=lt(A);if(null!=b)a=b,s=x,u=w,l=C;else if(u=l=-(a=s=1/0),n=[],r=[],o=t.length,T)for(i=0;i<o;++i)(e=t[i]).x<a&&(a=e.x),e.y<s&&(s=e.y),e.x>u&&(u=e.x),e.y>l&&(l=e.y),n.push(e.x),r.push(e.y);else for(i=0;i<o;++i){var p=+c(e=t[i],i),g=+h(e,i);p<a&&(a=p),g<s&&(s=g),u<p&&(u=p),l<g&&(l=g),n.push(p),r.push(g)}var v=u-a,m=l-s;m<v?l=s+v:u=a+m;var y={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){d(y,t,+c(t,++i),+h(t,i),a,s,u,l)}};if(y.visit=function(t){!function t(e,n,r,i,o,a){if(!e(n,r,i,o,a)){var s=.5*(r+o),u=.5*(i+a),l=n.nodes;l[0]&&t(e,l[0],r,i,s,u),l[1]&&t(e,l[1],s,i,o,u),l[2]&&t(e,l[2],r,u,s,a),l[3]&&t(e,l[3],s,u,o,a)}}(t,y,a,s,u,l)},i=-1,null==b){for(;++i<o;)d(y,t[i],n[i],r[i],a,s,u,l);--i}else t.forEach(y.add);return n=r=t=e=null,y}var T,M=Ae,A=Ee;return(T=arguments.length)?(M=qe,A=He,3===T&&(C=x,w=b,x=b=0),e(t)):(e.x=function(t){return arguments.length?(M=t,e):M},e.y=function(t){return arguments.length?(A=t,e):A},e.extent=function(t){return arguments.length?(null==t?b=x=w=C=null:(b=+t[0][0],x=+t[0][1],w=+t[1][0],C=+t[1][1]),e):null==b?null:[[b,x],[w,C]]},e.size=function(t){return arguments.length?(null==t?b=x=w=C=null:(b=x=0,w=+t[0],C=+t[1]),e):null==b?null:[w-b,C-x]},e)},Or.interpolateRgb=ze,Or.interpolateObject=Ke,Or.interpolateNumber=Oe,Or.interpolateString=Qe;var qo=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g;Or.interpolate=Ye,Or.interpolators=[function(t,e){var n=typeof e;return("string"===n?Ii.has(e)||/^(#|rgb\(|hsl\()/.test(e)?ze:Qe:e instanceof V?ze:"object"===n?Array.isArray(e)?We:Ke:Oe)(t,e)}],Or.interpolateArray=We;var Ho=function(){return ct},zo=Or.map({linear:Ho,poly:function(e){return function(t){return Math.pow(t,e)}},quad:function(){return Xe},cubic:function(){return Ze},sin:function(){return tn},exp:function(){return en},circle:function(){return nn},elastic:function(e,n){var r;return arguments.length<2&&(n=.45),arguments.length?r=n/(2*xi)*Math.asin(1/e):(e=1,r=n/4),function(t){return 1+e*Math.pow(2,10*-t)*Math.sin(2*(t-r)*xi/n)}},back:function(e){return e||(e=1.70158),function(t){return t*t*((e+1)*t-e)}},bounce:function(){return rn}}),Ko=Or.map({in:ct,out:Be,"in-out":Ue,"out-in":function(t){return Ue(Be(t))}});Or.ease=function(t){var e,n=t.indexOf("-"),r=0<=n?t.substring(0,n):t,i=0<=n?t.substring(n+1):"in";return r=zo.get(r)||Ho,i=Ko.get(i)||ct,e=i(r.apply(null,Array.prototype.slice.call(arguments,1))),function(t){return t<=0?0:1<=t?1:e(t)}},Or.interpolateHcl=function(t,e){t=Or.hcl(t),e=Or.hcl(e);var n=t.h,r=t.c,i=t.l,o=e.h-n,a=e.c-r,s=e.l-i;return isNaN(a)&&(a=0,r=isNaN(r)?e.c:r),isNaN(o)?(o=0,n=isNaN(n)?e.h:n):180<o?o-=360:o<-180&&(o+=360),function(t){return O(n+o*t,r+a*t,i+s*t)+""}},Or.interpolateHsl=function(t,e){t=Or.hsl(t),e=Or.hsl(e);var n=t.h,r=t.s,i=t.l,o=e.h-n,a=e.s-r,s=e.l-i;return isNaN(a)&&(a=0,r=isNaN(r)?e.s:r),isNaN(o)?(o=0,n=isNaN(n)?e.h:n):180<o?o-=360:o<-180&&(o+=360),function(t){return H(n+o*t,r+a*t,i+s*t)+""}},Or.interpolateLab=function(t,e){t=Or.lab(t),e=Or.lab(e);var n=t.l,r=t.a,i=t.b,o=e.l-n,a=e.a-r,s=e.b-i;return function(t){return W(n+o*t,r+a*t,i+s*t)+""}},Or.interpolateRound=on,Or.transform=function(t){var n=Wr.createElementNS(Or.ns.prefix.svg,"g");return(Or.transform=function(t){if(null!=t){n.setAttribute("transform",t);var e=n.transform.baseVal.consolidate()}return new an(e?e.matrix:Oo)})(t)},an.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var Oo={a:1,b:0,c:0,d:1,e:0,f:0};Or.interpolateTransform=ln,Or.layout={},Or.layout.bundle=function(){return function(t){for(var e=[],n=-1,r=t.length;++n<r;)e.push(hn(t[n]));return e}},Or.layout.chord=function(){function t(){var t,e,n,r,i,o={},a=[],s=Or.range(x),u=[];for(m=[],y=[],t=0,r=-1;++r<x;){for(e=0,i=-1;++i<x;)e+=b[r][i];a.push(e),u.push(Or.range(x)),t+=e}for(w&&s.sort(function(t,e){return w(a[t],a[e])}),C&&u.forEach(function(t,n){t.sort(function(t,e){return C(b[n][t],b[n][e])})}),t=(2*xi-M*x)/t,e=0,r=-1;++r<x;){for(n=e,i=-1;++i<x;){var l=s[r],c=u[l][i],f=b[l][c],h=e,d=e+=f*t;o[l+"-"+c]={index:l,subindex:c,startAngle:h,endAngle:d,value:f}}y[l]={index:l,startAngle:n,endAngle:e,value:(e-n)/t},e+=M}for(r=-1;++r<x;)for(i=r-1;++i<x;){var p=o[r+"-"+i],g=o[i+"-"+r];(p.value||g.value)&&m.push(p.value<g.value?{source:g,target:p}:{source:p,target:g})}T&&v()}function v(){m.sort(function(t,e){return T((t.source.value+t.target.value)/2,(e.source.value+e.target.value)/2)})}var m,y,b,x,w,C,T,e={},M=0;return e.matrix=function(t){return arguments.length?(x=(b=t)&&b.length,m=y=null,e):b},e.padding=function(t){return arguments.length?(M=t,m=y=null,e):M},e.sortGroups=function(t){return arguments.length?(w=t,m=y=null,e):w},e.sortSubgroups=function(t){return arguments.length?(C=t,m=null,e):C},e.sortChords=function(t){return arguments.length?(T=t,m&&v(),e):T},e.chords=function(){return m||t(),m},e.groups=function(){return y||t(),y},e},Or.layout.force=function(){function f(u){return function(t,e,n,r){if(t.point!==u){var i=t.cx-u.x,o=t.cy-u.y,a=1/Math.sqrt(i*i+o*o);if((r-e)*a<l){var s=t.charge*a*a;return u.px-=i*s,u.py-=o*s,!0}if(t.point&&isFinite(a)){s=t.pointCharge*a*a;u.px-=i*s,u.py-=o*s}}return!t.charge}}function t(t){t.px=Or.event.x,t.py=Or.event.y,i.resume()}var e,h,d,p,g,i={},v=Or.dispatch("start","tick","end"),m=[1,1],y=.9,o=Qo,b=Yo,x=-30,w=.1,l=.8,C=[],T=[];return i.tick=function(){if((h*=.99)<.005)return v.end({type:"end",alpha:h=0}),!0;var t,e,n,r,i,o,a,s,u,l=C.length,c=T.length;for(e=0;e<c;++e)r=(n=T[e]).source,(o=(s=(i=n.target).x-r.x)*s+(u=i.y-r.y)*u)&&(s*=o=h*p[e]*((o=Math.sqrt(o))-d[e])/o,u*=o,i.x-=s*(a=r.weight/(i.weight+r.weight)),i.y-=u*a,r.x+=s*(a=1-a),r.y+=u*a);if((a=h*w)&&(s=m[0]/2,u=m[1]/2,e=-1,a))for(;++e<l;)(n=C[e]).x+=(s-n.x)*a,n.y+=(u-n.y)*a;if(x)for(function t(e,n,r){var i=0,o=0;if(e.charge=0,!e.leaf)for(var a,s=e.nodes,u=s.length,l=-1;++l<u;)null!=(a=s[l])&&(t(a,n,r),e.charge+=a.charge,i+=a.charge*a.cx,o+=a.charge*a.cy);if(e.point){e.leaf||(e.point.x+=Math.random()-.5,e.point.y+=Math.random()-.5);var c=n*r[e.point.index];e.charge+=e.pointCharge=c,i+=c*e.point.x,o+=c*e.point.y}e.cx=i/e.charge,e.cy=o/e.charge}(t=Or.geom.quadtree(C),h,g),e=-1;++e<l;)(n=C[e]).fixed||t.visit(f(n));for(e=-1;++e<l;)(n=C[e]).fixed?(n.x=n.px,n.y=n.py):(n.x-=(n.px-(n.px=n.x))*y,n.y-=(n.py-(n.py=n.y))*y);v.tick({type:"tick",alpha:h})},i.nodes=function(t){return arguments.length?(C=t,i):C},i.links=function(t){return arguments.length?(T=t,i):T},i.size=function(t){return arguments.length?(m=t,i):m},i.linkDistance=function(t){return arguments.length?(o="function"==typeof t?t:+t,i):o},i.distance=i.linkDistance,i.linkStrength=function(t){return arguments.length?(b="function"==typeof t?t:+t,i):b},i.friction=function(t){return arguments.length?(y=+t,i):y},i.charge=function(t){return arguments.length?(x="function"==typeof t?t:+t,i):x},i.gravity=function(t){return arguments.length?(w=+t,i):w},i.theta=function(t){return arguments.length?(l=+t,i):l},i.alpha=function(t){return arguments.length?(t=+t,h?h=0<t?t:0:0<t&&(v.start({type:"start",alpha:h=t}),Or.timer(i.tick)),i):h},i.start=function(){function t(t,e){for(var n,r=function(){if(!u){for(u=[],s=0;s<l;++s)u[s]=[];for(s=0;s<c;++s){var t=T[s];u[t.source.index].push(t.target),u[t.target.index].push(t.source)}}return u[a]}(),i=-1,o=r.length;++i<o;)if(!isNaN(n=r[i][t]))return n;return Math.random()*e}var a,s,u,e,l=C.length,c=T.length,n=m[0],r=m[1];for(a=0;a<l;++a)(e=C[a]).index=a,e.weight=0;for(a=0;a<c;++a)"number"==typeof(e=T[a]).source&&(e.source=C[e.source]),"number"==typeof e.target&&(e.target=C[e.target]),++e.source.weight,++e.target.weight;for(a=0;a<l;++a)e=C[a],isNaN(e.x)&&(e.x=t("x",n)),isNaN(e.y)&&(e.y=t("y",r)),isNaN(e.px)&&(e.px=e.x),isNaN(e.py)&&(e.py=e.y);if(d=[],"function"==typeof o)for(a=0;a<c;++a)d[a]=+o.call(this,T[a],a);else for(a=0;a<c;++a)d[a]=o;if(p=[],"function"==typeof b)for(a=0;a<c;++a)p[a]=+b.call(this,T[a],a);else for(a=0;a<c;++a)p[a]=b;if(g=[],"function"==typeof x)for(a=0;a<l;++a)g[a]=+x.call(this,C[a],a);else for(a=0;a<l;++a)g[a]=x;return i.resume()},i.resume=function(){return i.alpha(.1)},i.stop=function(){return i.alpha(0)},i.drag=function(){return e||(e=Or.behavior.drag().origin(ct).on("dragstart.force",pn).on("drag.force",t).on("dragend.force",gn)),arguments.length?void this.on("mouseover.force",vn).on("mouseout.force",mn).call(e):e},Or.rebind(i,v,"on")};var Qo=20,Yo=1;Or.layout.hierarchy=function(){function f(t){var e=[];return function t(e,n,r){var i=d.call(f,e,n);if(e.depth=n,r.push(e),i&&(o=i.length)){for(var o,a,s=-1,u=e.children=[],l=0,c=n+1;++s<o;)(a=t(i[s],c,r)).parent=e,u.push(a),l+=a.value;h&&u.sort(h),p&&(e.value=l)}else p&&(e.value=+p.call(f,e,n)||0);return e}(t,0,e),e}var h=wn,d=bn,p=xn;return f.sort=function(t){return arguments.length?(h=t,f):h},f.children=function(t){return arguments.length?(d=t,f):d},f.value=function(t){return arguments.length?(p=t,f):p},f.revalue=function(t){return function t(e,n){var r=e.children,i=0;if(r&&(o=r.length))for(var o,a=-1,s=n+1;++a<o;)i+=t(r[a],s);else p&&(i=+p.call(f,e,n)||0);return p&&(e.value=i),i}(t,0),t},f},Or.layout.partition=function(){function e(t,e){var n=r.call(this,t,e);return function t(e,n,r,i){var o=e.children;if(e.x=n,e.y=e.depth*i,e.dx=r,e.dy=i,o&&(a=o.length)){var a,s,u,l=-1;for(r=e.value?r/e.value:0;++l<a;)t(s=o[l],n,u=s.value*r,i),n+=u}}(n[0],0,i[0],i[1]/function t(e){var n=e.children,r=0;if(n&&(i=n.length))for(var i,o=-1;++o<i;)r=Math.max(r,t(n[o]));return 1+r}(n[0])),n}var r=Or.layout.hierarchy(),i=[1,1];return e.size=function(t){return arguments.length?(i=t,e):i},yn(e,r)},Or.layout.pie=function(){function s(n){var r=n.map(function(t,e){return+u.call(s,t,e)}),i=+("function"==typeof e?e.apply(this,arguments):e),o=(("function"==typeof c?c.apply(this,arguments):c)-i)/Or.sum(r),t=Or.range(n.length);null!=l&&t.sort(l===Wo?function(t,e){return r[e]-r[t]}:function(t,e){return l(n[t],n[e])});var a=[];return t.forEach(function(t){var e;a[t]={data:n[t],value:e=r[t],startAngle:i,endAngle:i+=e*o}}),a}var u=Number,l=Wo,e=0,c=2*xi;return s.value=function(t){return arguments.length?(u=t,s):u},s.sort=function(t){return arguments.length?(l=t,s):l},s.startAngle=function(t){return arguments.length?(e=t,s):e},s.endAngle=function(t){return arguments.length?(c=t,s):c},s};var Wo={};Or.layout.stack=function(){function f(t,e){var n=t.map(function(t,e){return h.call(f,t,e)}),r=n.map(function(t){return t.map(function(t,e){return[v.call(f,t,e),m.call(f,t,e)]})}),i=d.call(f,r,e);n=Or.permute(n,i),r=Or.permute(r,i);var o,a,s,u=p.call(f,r,e),l=n.length,c=n[0].length;for(a=0;a<c;++a)for(g.call(f,n[0][a],s=u[a],r[0][a][1]),o=1;o<l;++o)g.call(f,n[o][a],s+=r[o-1][a][1],r[o][a][1]);return t}var h=ct,d=En,p=Sn,g=An,v=Tn,m=Mn;return f.values=function(t){return arguments.length?(h=t,f):h},f.order=function(t){return arguments.length?(d="function"==typeof t?t:Bo.get(t)||En,f):d},f.offset=function(t){return arguments.length?(p="function"==typeof t?t:Uo.get(t)||Sn,f):p},f.x=function(t){return arguments.length?(v=t,f):v},f.y=function(t){return arguments.length?(m=t,f):m},f.out=function(t){return arguments.length?(g=t,f):g},f};var Bo=Or.map({"inside-out":function(t){var e,n,r=t.length,i=t.map(Nn),o=t.map(kn),a=Or.range(r).sort(function(t,e){return i[t]-i[e]}),s=0,u=0,l=[],c=[];for(e=0;e<r;++e)n=a[e],s<u?(s+=o[n],l.push(n)):(u+=o[n],c.push(n));return c.reverse().concat(l)},reverse:function(t){return Or.range(t.length).reverse()},default:En}),Uo=Or.map({silhouette:function(t){var e,n,r,i=t.length,o=t[0].length,a=[],s=0,u=[];for(n=0;n<o;++n){for(r=e=0;e<i;e++)r+=t[e][n][1];s<r&&(s=r),a.push(r)}for(n=0;n<o;++n)u[n]=(s-a[n])/2;return u},wiggle:function(t){var e,n,r,i,o,a,s,u,l,c=t.length,f=t[0],h=f.length,d=[];for(d[0]=u=l=0,n=1;n<h;++n){for(i=e=0;e<c;++e)i+=t[e][n][1];for(o=e=0,s=f[n][0]-f[n-1][0];e<c;++e){for(r=0,a=(t[e][n][1]-t[e][n-1][1])/(2*s);r<e;++r)a+=(t[r][n][1]-t[r][n-1][1])/s;o+=a*t[e][n][1]}d[n]=u-=i?o/i*s:0,u<l&&(l=u)}for(n=0;n<h;++n)d[n]-=l;return d},expand:function(t){var e,n,r,i=t.length,o=t[0].length,a=1/i,s=[];for(n=0;n<o;++n){for(r=e=0;e<i;e++)r+=t[e][n][1];if(r)for(e=0;e<i;e++)t[e][n][1]/=r;else for(e=0;e<i;e++)t[e][n][1]=a}for(n=0;n<o;++n)s[n]=0;return s},zero:Sn});Or.layout.histogram=function(){function n(t,e){for(var n,r,i=[],o=t.map(h,this),a=d.call(this,o,e),s=p.call(this,a,o,e),u=(e=-1,o.length),l=s.length-1,c=f?1:1/u;++e<l;)(n=i[e]=[]).dx=s[e+1]-(n.x=s[e]),n.y=0;if(0<l)for(e=-1;++e<u;)(r=o[e])>=a[0]&&r<=a[1]&&((n=i[Or.bisect(s,r,1,l)-1]).y+=c,n.push(t[e]));return i}var f=!0,h=Number,d=Gn,p=_n;return n.value=function(t){return arguments.length?(h=t,n):h},n.range=function(t){return arguments.length?(d=lt(t),n):d},n.bins=function(e){return arguments.length?(p="number"==typeof e?function(t){return Ln(t,e)}:lt(e),n):p},n.frequency=function(t){return arguments.length?(f=!!t,n):f},n},Or.layout.tree=function(){function e(t,e){function h(t,e,n){if(e){for(var r,i=t,o=t,a=e,s=t.parent.children[0],u=i._tree.mod,l=o._tree.mod,c=a._tree.mod,f=s._tree.mod;a=Pn(a),i=$n(i),a&&i;)s=$n(s),(o=Pn(o))._tree.ancestor=t,0<(r=a._tree.prelim+c-i._tree.prelim-u+g(a,i))&&(Hn((d=t,p=n,(h=a)._tree.ancestor.parent==d.parent?h._tree.ancestor:p),t,r),u+=r,l+=r),c+=a._tree.mod,u+=i._tree.mod,f+=s._tree.mod,l+=o._tree.mod;a&&!Pn(o)&&(o._tree.thread=a,o._tree.mod+=c-l),i&&!$n(s)&&(s._tree.thread=i,s._tree.mod+=u-f,n=t)}var h,d,p;return n}var n=c.call(this,t,e),r=n[0];qn(r,function(t,e){t._tree={ancestor:t,prelim:0,mod:0,change:0,shift:0,number:e?e._tree.number+1:0}}),function t(e,n){var r=e.children,i=e._tree;if(r&&(o=r.length)){for(var o,a,s,u=r[0],l=u,c=-1;++c<o;)t(s=r[c],a),l=h(s,a,l),a=s;!function(t){for(var e,n=0,r=0,i=t.children,o=i.length;0<=--o;)(e=i[o]._tree).prelim+=n,e.mod+=n,n+=e.shift+(r+=e.change)}(e);var f=.5*(u._tree.prelim+s._tree.prelim);n?(i.prelim=n._tree.prelim+g(e,n),i.mod=i.prelim-f):i.prelim=f}else n&&(i.prelim=n._tree.prelim+g(e,n))}(r),function t(e,n){e.x=e._tree.prelim+n;var r=e.children;if(r&&(i=r.length)){var i,o=-1;for(n+=e._tree.mod;++o<i;)t(r[o],n)}}(r,-r._tree.prelim);var i=Rn(r,Vn),o=Rn(r,In),a=Rn(r,jn),s=i.x-g(i,o)/2,u=o.x+g(o,i)/2,l=a.depth||1;return qn(r,d?function(t){t.x*=f[0],t.y=t.depth*f[1],delete t._tree}:function(t){t.x=(t.x-s)/(u-s)*f[0],t.y=t.depth/l*f[1],delete t._tree}),n}var c=Or.layout.hierarchy().sort(null).value(null),g=Fn,f=[1,1],d=!1;return e.separation=function(t){return arguments.length?(g=t,e):g},e.size=function(t){return arguments.length?(d=null==(f=t),e):d?null:f},e.nodeSize=function(t){return arguments.length?(d=null!=(f=t),e):d?f:null},yn(e,c)},Or.layout.pack=function(){function e(t,e){var n=l.call(this,t,e),r=n[0],i=f[0],o=f[1],a=null==u?Math.sqrt:"function"==typeof u?u:function(){return u};if(r.x=r.y=0,qn(r,function(t){t.r=+a(t.value)}),qn(r,Yn),c){var s=c*(u?1:Math.max(2*r.r/i,2*r.r/o))/2;qn(r,function(t){t.r+=s}),qn(r,Yn),qn(r,function(t){t.r-=s})}return function t(e,n,r,i){var o=e.children;if(e.x=n+=i*e.x,e.y=r+=i*e.y,e.r*=i,o)for(var a=-1,s=o.length;++a<s;)t(o[a],n,r,i)}(r,i/2,o/2,u?1:1/Math.max(2*r.r/i,2*r.r/o)),n}var u,l=Or.layout.hierarchy().sort(zn),c=0,f=[1,1];return e.size=function(t){return arguments.length?(f=t,e):f},e.radius=function(t){return arguments.length?(u=null==t||"function"==typeof t?t:+t,e):u},e.padding=function(t){return arguments.length?(c=+t,e):c},yn(e,l)},Or.layout.cluster=function(){function e(t,e){var i,n=c.call(this,t,e),r=n[0],o=0;qn(r,function(t){var e,n,r=t.children;r&&r.length?(t.x=(n=r).reduce(function(t,e){return t+e.x},0)/n.length,t.y=(e=r,1+Or.max(e,function(t){return t.y}))):(t.x=i?o+=f(t,i):0,t.y=0,i=t)});var a=function t(e){var n=e.children;return n&&n.length?t(n[0]):e}(r),s=function t(e){var n,r=e.children;return r&&(n=r.length)?t(r[n-1]):e}(r),u=a.x-f(a,s)/2,l=s.x+f(s,a)/2;return qn(r,d?function(t){t.x=(t.x-r.x)*h[0],t.y=(r.y-t.y)*h[1]}:function(t){t.x=(t.x-u)/(l-u)*h[0],t.y=(1-(r.y?t.y/r.y:1))*h[1]}),n}var c=Or.layout.hierarchy().sort(null).value(null),f=Fn,h=[1,1],d=!1;return e.separation=function(t){return arguments.length?(f=t,e):f},e.size=function(t){return arguments.length?(d=null==(h=t),e):d?null:h},e.nodeSize=function(t){return arguments.length?(d=null!=(h=t),e):d?h:null},yn(e,c)},Or.layout.treemap=function(){function c(t,e){for(var n,r,i=-1,o=t.length;++i<o;)r=(n=t[i]).value*(e<0?0:e),n.area=isNaN(r)||r<=0?0:r}function f(t){var e=t.children;if(e&&e.length){var n,r,i,o=g(t),a=[],s=e.slice(),u=1/0,l="slice"===v?o.dx:"dice"===v?o.dy:"slice-dice"===v?1&t.depth?o.dy:o.dx:Math.min(o.dx,o.dy);for(c(s,o.dx*o.dy/t.value),a.area=0;0<(i=s.length);)a.push(n=s[i-1]),a.area+=n.area,"squarify"!==v||(r=h(a,l))<=u?(s.pop(),u=r):(a.area-=a.pop().area,d(a,l,o,!1),l=Math.min(o.dx,o.dy),a.length=a.area=0,u=1/0);a.length&&(d(a,l,o,!0),a.length=a.area=0),e.forEach(f)}}function a(t){var e=t.children;if(e&&e.length){var n,r=g(t),i=e.slice(),o=[];for(c(i,r.dx*r.dy/t.value),o.area=0;n=i.pop();)o.push(n),o.area+=n.area,null!=n.z&&(d(o,n.z?r.dx:r.dy,r,!i.length),o.length=o.area=0);e.forEach(a)}}function h(t,e){for(var n,r=t.area,i=0,o=1/0,a=-1,s=t.length;++a<s;)(n=t[a].area)&&(n<o&&(o=n),i<n&&(i=n));return e*=e,(r*=r)?Math.max(e*i*m/r,r/(e*o*m)):1/0}function d(t,e,n,r){var i,o=-1,a=t.length,s=n.x,u=n.y,l=e?p(t.area/e):0;if(e==n.dx){for((r||l>n.dy)&&(l=n.dy);++o<a;)(i=t[o]).x=s,i.y=u,i.dy=l,s+=i.dx=Math.min(n.x+n.dx-s,l?p(i.area/l):0);i.z=!0,i.dx+=n.x+n.dx-s,n.y+=l,n.dy-=l}else{for((r||l>n.dx)&&(l=n.dx);++o<a;)(i=t[o]).x=s,i.y=u,i.dx=l,u+=i.dy=Math.min(n.y+n.dy-u,l?p(i.area/l):0);i.z=!1,i.dy+=n.y+n.dy-u,n.x+=l,n.dx-=l}}function r(t){var e=i||o(t),n=e[0];return n.x=0,n.y=0,n.dx=s[0],n.dy=s[1],i&&o.revalue(n),c([n],n.dx*n.dy/n.value),(i?a:f)(n),l&&(i=e),e}var i,o=Or.layout.hierarchy(),p=Math.round,s=[1,1],u=null,g=Xn,l=!1,v="squarify",m=.5*(1+Math.sqrt(5));return r.size=function(t){return arguments.length?(s=t,r):s},r.padding=function(n){function t(t){return Zn(t,n)}return arguments.length?(g=null==(u=n)?Xn:"function"==(e=typeof n)?function(t){var e=n.call(r,t,t.depth);return null==e?Xn(t):Zn(t,"number"==typeof e?[e,e,e,e]:e)}:("number"===e&&(n=[n,n,n,n]),t),r):u;var e},r.round=function(t){return arguments.length?(p=t?Math.round:Number,r):p!=Number},r.sticky=function(t){return arguments.length?(l=t,i=null,r):l},r.ratio=function(t){return arguments.length?(m=t,r):m},r.mode=function(t){return arguments.length?(v=t+"",r):v},yn(r,o)},Or.random={normal:function(r,i){var t=arguments.length;return t<2&&(i=1),t<1&&(r=0),function(){for(var t,e,n;!(n=(t=2*Math.random()-1)*t+(e=2*Math.random()-1)*e)||1<n;);return r+i*t*Math.sqrt(-2*Math.log(n)/n)}},logNormal:function(){var t=Or.random.normal.apply(Or,arguments);return function(){return Math.exp(t())}},irwinHall:function(n){return function(){for(var t=0,e=0;e<n;e++)t+=Math.random();return t/n}}},Or.scale={};var Xo={floor:ct,ceil:ct};Or.scale.linear=function(){return function t(n,r,i,o){function e(){var t=2<Math.min(n.length,r.length)?rr:er,e=o?fn:cn;return s=t(n,r,e,i),u=t(r,n,e,Ye),a}function a(t){return s(t)}var s,u;return a.invert=function(t){return u(t)},a.domain=function(t){return arguments.length?(n=t.map(Number),e()):n},a.range=function(t){return arguments.length?(r=t,e()):r},a.rangeRound=function(t){return a.range(t).interpolate(on)},a.clamp=function(t){return arguments.length?(o=t,e()):o},a.interpolate=function(t){return arguments.length?(i=t,e()):i},a.ticks=function(t){return sr(n,t)},a.tickFormat=function(t,e){return ur(n,t,e)},a.nice=function(t){return or(n,t),e()},a.copy=function(){return t(n,r,i,o)},e()}([0,1],[0,1],Ye,!1)},Or.scale.log=function(){return function t(e,u,l,c){function f(t){return(l?Math.log(t<0?0:t):-Math.log(0<t?0:-t))/Math.log(u)}function h(t){return l?Math.pow(u,t):-Math.pow(u,-t)}function o(t){return e(f(t))}return o.invert=function(t){return h(e.invert(t))},o.domain=function(t){return arguments.length?(l=0<=t[0],e.domain((c=t.map(Number)).map(f)),o):c},o.base=function(t){return arguments.length?(u=+t,e.domain(c.map(f)),o):u},o.nice=function(){var t=nr(c.map(f),l?Math:Jo);return e.domain(t),c=t.map(h),o},o.ticks=function(){var t=Jn(c),e=[],n=t[0],r=t[1],i=Math.floor(f(n)),o=Math.ceil(f(r)),a=u%1?2:u;if(isFinite(o-i)){if(l){for(;i<o;i++)for(var s=1;s<a;s++)e.push(h(i)*s);e.push(h(i))}else for(e.push(h(i));i++<o;)for(s=a-1;0<s;s--)e.push(h(i)*s);for(i=0;e[i]<n;i++);for(o=e.length;e[o-1]>r;o--);e=e.slice(i,o)}return e},o.tickFormat=function(t,e){if(!arguments.length)return Zo;arguments.length<2?e=Zo:"function"!=typeof e&&(e=Or.format(e));var n,r=Math.max(.1,t/o.ticks().length),i=l?(n=1e-12,Math.ceil):(n=-1e-12,Math.floor);return function(t){return t/h(i(f(t)+n))<=r?e(t):""}},o.copy=function(){return t(e.copy(),u,l,c)},ir(o,e)}(Or.scale.linear().domain([0,1]),10,!0,[1,10])};var Zo=Or.format(".0e"),Jo={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};Or.scale.pow=function(){return function t(e,n,r){function i(t){return e(o(t))}var o=lr(n),a=lr(1/n);return i.invert=function(t){return a(e.invert(t))},i.domain=function(t){return arguments.length?(e.domain((r=t.map(Number)).map(o)),i):r},i.ticks=function(t){return sr(r,t)},i.tickFormat=function(t,e){return ur(r,t,e)},i.nice=function(t){return i.domain(or(r,t))},i.exponent=function(t){return arguments.length?(o=lr(n=t),a=lr(1/n),e.domain(r.map(o)),i):n},i.copy=function(){return t(e.copy(),n,r)},ir(i,e)}(Or.scale.linear(),1,[0,1])},Or.scale.sqrt=function(){return Or.scale.pow().exponent(.5)},Or.scale.ordinal=function(){return function t(u,l){function c(t){return h[((i.get(t)||i.set(t,u.push(t)))-1)%h.length]}function f(e,n){return Or.range(u.length).map(function(t){return e+n*t})}var i,h,d;return c.domain=function(t){if(!arguments.length)return u;u=[],i=new b;for(var e,n=-1,r=t.length;++n<r;)i.has(e=t[n])||i.set(e,u.push(e));return c[l.t].apply(c,l.a)},c.range=function(t){return arguments.length?(h=t,d=0,l={t:"range",a:arguments},c):h},c.rangePoints=function(t,e){arguments.length<2&&(e=0);var n=t[0],r=t[1],i=(r-n)/(Math.max(1,u.length-1)+e);return h=f(u.length<2?(n+r)/2:n+i*e/2,i),d=0,l={t:"rangePoints",a:arguments},c},c.rangeBands=function(t,e,n){arguments.length<2&&(e=0),arguments.length<3&&(n=e);var r=t[1]<t[0],i=t[r-0],o=(t[1-r]-i)/(u.length-e+2*n);return h=f(i+o*n,o),r&&h.reverse(),d=o*(1-e),l={t:"rangeBands",a:arguments},c},c.rangeRoundBands=function(t,e,n){arguments.length<2&&(e=0),arguments.length<3&&(n=e);var r=t[1]<t[0],i=t[r-0],o=t[1-r],a=Math.floor((o-i)/(u.length-e+2*n)),s=o-i-(u.length-e)*a;return h=f(i+Math.round(s/2),a),r&&h.reverse(),d=Math.round(a*(1-e)),l={t:"rangeRoundBands",a:arguments},c},c.rangeBand=function(){return d},c.rangeExtent=function(){return Jn(l.a[0])},c.copy=function(){return t(u,l)},c.domain(u)}([],{t:"range",a:[[]]})},Or.scale.category10=function(){return Or.scale.ordinal().range(ta)},Or.scale.category20=function(){return Or.scale.ordinal().range(ea)},Or.scale.category20b=function(){return Or.scale.ordinal().range(na)},Or.scale.category20c=function(){return Or.scale.ordinal().range(ra)};var ta=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(tt),ea=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(tt),na=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(tt),ra=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(tt);Or.scale.quantile=function(){return function t(n,r){function e(){var t=0,e=r.length;for(o=[];++t<e;)o[t-1]=Or.quantile(n,t/e);return i}function i(t){return isNaN(t=+t)?void 0:r[Or.bisect(o,t)]}var o;return i.domain=function(t){return arguments.length?(n=t.filter(function(t){return!isNaN(t)}).sort(Or.ascending),e()):n},i.range=function(t){return arguments.length?(r=t,e()):r},i.quantiles=function(){return o},i.invertExtent=function(t){return(t=r.indexOf(t))<0?[NaN,NaN]:[0<t?o[t-1]:n[0],t<o.length?o[t]:n[n.length-1]]},i.copy=function(){return t(n,r)},e()}([],[])},Or.scale.quantize=function(){return function t(e,n,r){function i(t){return r[Math.max(0,Math.min(s,Math.floor(a*(t-e))))]}function o(){return a=r.length/(n-e),s=r.length-1,i}var a,s;return i.domain=function(t){return arguments.length?(e=+t[0],n=+t[t.length-1],o()):[e,n]},i.range=function(t){return arguments.length?(r=t,o()):r},i.invertExtent=function(t){return[t=(t=r.indexOf(t))<0?NaN:t/a+e,t+1/a]},i.copy=function(){return t(e,n,r)},o()}(0,1,[0,1])},Or.scale.threshold=function(){return function t(e,n){function r(t){return t<=t?n[Or.bisect(e,t)]:void 0}return r.domain=function(t){return arguments.length?(e=t,r):e},r.range=function(t){return arguments.length?(n=t,r):n},r.invertExtent=function(t){return t=n.indexOf(t),[e[t-1],e[t]]},r.copy=function(){return t(e,n)},r}([.5],[0,1])},Or.scale.identity=function(){return function t(n){function e(t){return+t}return(e.invert=e).domain=e.range=function(t){return arguments.length?(n=t.map(e),e):n},e.ticks=function(t){return sr(n,t)},e.tickFormat=function(t,e){return ur(n,t,e)},e.copy=function(){return t(n)},e}([0,1])},Or.svg.arc=function(){function e(){var t=c.apply(this,arguments),e=f.apply(this,arguments),n=h.apply(this,arguments)+ia,r=d.apply(this,arguments)+ia,i=(r<n&&(i=n,n=r,r=i),r-n),o=i<xi?"0":"1",a=Math.cos(n),s=Math.sin(n),u=Math.cos(r),l=Math.sin(r);return oa<=i?t?"M0,"+e+"A"+e+","+e+" 0 1,1 0,"+-e+"A"+e+","+e+" 0 1,1 0,"+e+"M0,"+t+"A"+t+","+t+" 0 1,0 0,"+-t+"A"+t+","+t+" 0 1,0 0,"+t+"Z":"M0,"+e+"A"+e+","+e+" 0 1,1 0,"+-e+"A"+e+","+e+" 0 1,1 0,"+e+"Z":t?"M"+e*a+","+e*s+"A"+e+","+e+" 0 "+o+",1 "+e*u+","+e*l+"L"+t*u+","+t*l+"A"+t+","+t+" 0 "+o+",0 "+t*a+","+t*s+"Z":"M"+e*a+","+e*s+"A"+e+","+e+" 0 "+o+",1 "+e*u+","+e*l+"L0,0Z"}var c=cr,f=fr,h=hr,d=dr;return e.innerRadius=function(t){return arguments.length?(c=lt(t),e):c},e.outerRadius=function(t){return arguments.length?(f=lt(t),e):f},e.startAngle=function(t){return arguments.length?(h=lt(t),e):h},e.endAngle=function(t){return arguments.length?(d=lt(t),e):d},e.centroid=function(){var t=(c.apply(this,arguments)+f.apply(this,arguments))/2,e=(h.apply(this,arguments)+d.apply(this,arguments))/2+ia;return[Math.cos(e)*t,Math.sin(e)*t]},e};var ia=-xi/2,oa=2*xi-1e-6;Or.svg.line.radial=function(){var t=Me(pr);return t.radius=t.x,delete t.x,t.angle=t.y,delete t.y,t},(Ne.reverse=ke).reverse=Ne,Or.svg.area=function(){return gr(ct)},Or.svg.area.radial=function(){var t=gr(pr);return t.radius=t.x,delete t.x,t.innerRadius=t.x0,delete t.x0,t.outerRadius=t.x1,delete t.x1,t.angle=t.y,delete t.y,t.startAngle=t.y0,delete t.y0,t.endAngle=t.y1,delete t.y1,t},Or.svg.chord=function(){function e(t,e){var n,r,i=a(this,l,t,e),o=a(this,c,t,e);return"M"+i.p0+s(i.r,i.p1,i.a1-i.a0)+(r=o,(n=i).a0==r.a0&&n.a1==r.a1?u(i.r,i.p1,i.r,i.p0):u(i.r,i.p1,o.r,o.p0)+s(o.r,o.p1,o.a1-o.a0)+u(o.r,o.p1,i.r,i.p0))+"Z"}function a(t,e,n,r){var i=e.call(t,n,r),o=f.call(t,i,r),a=h.call(t,i,r)+ia,s=d.call(t,i,r)+ia;return{r:o,a0:a,a1:s,p0:[o*Math.cos(a),o*Math.sin(a)],p1:[o*Math.cos(s),o*Math.sin(s)]}}function s(t,e,n){return"A"+t+","+t+" 0 "+ +(xi<n)+",1 "+e}function u(t,e,n,r){return"Q 0,0 "+r}var l=ve,c=me,f=vr,h=hr,d=dr;return e.radius=function(t){return arguments.length?(f=lt(t),e):f},e.source=function(t){return arguments.length?(l=lt(t),e):l},e.target=function(t){return arguments.length?(c=lt(t),e):c},e.startAngle=function(t){return arguments.length?(h=lt(t),e):h},e.endAngle=function(t){return arguments.length?(d=lt(t),e):d},e},Or.svg.diagonal=function(){function e(t,e){var n=a.call(this,t,e),r=s.call(this,t,e),i=(n.y+r.y)/2,o=[n,{x:n.x,y:i},{x:r.x,y:i},r];return"M"+(o=o.map(u))[0]+"C"+o[1]+" "+o[2]+" "+o[3]}var a=ve,s=me,u=mr;return e.source=function(t){return arguments.length?(a=lt(t),e):a},e.target=function(t){return arguments.length?(s=lt(t),e):s},e.projection=function(t){return arguments.length?(u=t,e):u},e},Or.svg.diagonal.radial=function(){var t=Or.svg.diagonal(),e=mr,n=t.projection;return t.projection=function(t){return arguments.length?n((r=e=t,function(){var t=r.apply(this,arguments),e=t[0],n=t[1]+ia;return[e*Math.cos(n),e*Math.sin(n)]})):e;var r},t},Or.svg.symbol=function(){function e(t,e){return(aa.get(n.call(this,t,e))||xr)(r.call(this,t,e))}var n=br,r=yr;return e.type=function(t){return arguments.length?(n=lt(t),e):n},e.size=function(t){return arguments.length?(r=lt(t),e):r},e};var aa=Or.map({circle:xr,cross:function(t){var e=Math.sqrt(t/5)/2;return"M"+-3*e+","+-e+"H"+-e+"V"+-3*e+"H"+e+"V"+-e+"H"+3*e+"V"+e+"H"+e+"V"+3*e+"H"+-e+"V"+e+"H"+-3*e+"Z"},diamond:function(t){var e=Math.sqrt(t/(2*ca)),n=e*ca;return"M0,"+-e+"L"+n+",0 0,"+e+" "+-n+",0Z"},square:function(t){var e=Math.sqrt(t)/2;return"M"+-e+","+-e+"L"+e+","+-e+" "+e+","+e+" "+-e+","+e+"Z"},"triangle-down":function(t){var e=Math.sqrt(t/la),n=e*la/2;return"M0,"+n+"L"+e+","+-n+" "+-e+","+-n+"Z"},"triangle-up":function(t){var e=Math.sqrt(t/la),n=e*la/2;return"M0,"+-n+"L"+e+","+n+" "+-e+","+n+"Z"}});Or.svg.symbolTypes=aa.keys();var sa,ua,la=Math.sqrt(3),ca=Math.tan(30*Ti),fa=[],ha=0;fa.call=hi.call,fa.empty=hi.empty,fa.node=hi.node,fa.size=hi.size,Or.transition=function(t){return arguments.length?sa?t.transition():t:gi.transition()},Or.transition.prototype=fa,hi.transition=function(){for(var t,e,n=sa||++ha,r=[],i=ua||{time:Date.now(),ease:Je,delay:0,duration:250},o=-1,a=this.length;++o<a;){r.push(t=[]);for(var s=this[o],u=-1,l=s.length;++u<l;)(e=s[u])&&Ar(e,u,n,i),t.push(e)}return wr(r,n)},hi.interrupt=function(){return this.each(Cr)},fa.select=function(t){var e,n,r,i=this.id,o=[];t=h(t);for(var a=-1,s=this.length;++a<s;){o.push(e=[]);for(var u=this[a],l=-1,c=u.length;++l<c;)(r=u[l])&&(n=t.call(r,r.__data__,l,a))?("__data__"in r&&(n.__data__=r.__data__),Ar(n,l,i,r.__transition__[i]),e.push(n)):e.push(null)}return wr(o,i)},fa.selectAll=function(t){var e,n,r,i,o,a=this.id,s=[];t=g(t);for(var u=-1,l=this.length;++u<l;)for(var c=this[u],f=-1,h=c.length;++f<h;)if(r=c[f]){o=r.__transition__[a],n=t.call(r,r.__data__,f,u),s.push(e=[]);for(var d=-1,p=n.length;++d<p;)(i=n[d])&&Ar(i,d,a,o),e.push(i)}return wr(s,a)},fa.filter=function(t){var e,n,r=[];"function"!=typeof t&&(t=T(t));for(var i=0,o=this.length;i<o;i++){r.push(e=[]);for(var a,s=0,u=(a=this[i]).length;s<u;s++)(n=a[s])&&t.call(n,n.__data__,s)&&e.push(n)}return wr(r,this.id)},fa.tween=function(e,n){var r=this.id;return arguments.length<2?this.node().__transition__[r].tween.get(e):M(this,null==n?function(t){t.__transition__[r].tween.remove(e)}:function(t){t.__transition__[r].tween.set(e,n)})},fa.attr=function(t,e){function r(){this.removeAttribute(a)}function i(){this.removeAttributeNS(a.space,a.local)}if(arguments.length<2){for(e in t)this.attr(e,t[e]);return this}var o="transform"==t?ln:Ye,a=Or.ns.qualify(t);return Tr(this,"attr."+t,e,a.local?function(n){return null==n?i:(n+="",function(){var e,t=this.getAttributeNS(a.space,a.local);return t!==n&&(e=o(t,n),function(t){this.setAttributeNS(a.space,a.local,e(t))})})}:function(n){return null==n?r:(n+="",function(){var e,t=this.getAttribute(a);return t!==n&&(e=o(t,n),function(t){this.setAttribute(a,e(t))})})})},fa.attrTween=function(t,r){var i=Or.ns.qualify(t);return this.tween("attr."+t,i.local?function(t,e){var n=r.call(this,t,e,this.getAttributeNS(i.space,i.local));return n&&function(t){this.setAttributeNS(i.space,i.local,n(t))}}:function(t,e){var n=r.call(this,t,e,this.getAttribute(i));return n&&function(t){this.setAttribute(i,n(t))}})},fa.style=function(r,t,i){function e(){this.style.removeProperty(r)}var n=arguments.length;if(n<3){if("string"!=typeof r){for(i in n<2&&(t=""),r)this.style(i,r[i],t);return this}i=""}return Tr(this,"style."+r,t,function(n){return null==n?e:(n+="",function(){var e,t=Ur.getComputedStyle(this,null).getPropertyValue(r);return t!==n&&(e=Ye(t,n),function(t){this.style.setProperty(r,e(t),i)})})})},fa.styleTween=function(r,i,o){return arguments.length<3&&(o=""),this.tween("style."+r,function(t,e){var n=i.call(this,t,e,Ur.getComputedStyle(this,null).getPropertyValue(r));return n&&function(t){this.style.setProperty(r,n(t),o)}})},fa.text=function(t){return Tr(this,"text",t,Mr)},fa.remove=function(){return this.each("end.transition",function(){var t;this.__transition__.count<2&&(t=this.parentNode)&&t.removeChild(this)})},fa.ease=function(e){var n=this.id;return arguments.length<1?this.node().__transition__[n].ease:("function"!=typeof e&&(e=Or.ease.apply(Or,arguments)),M(this,function(t){t.__transition__[n].ease=e}))},fa.delay=function(r){var i=this.id;return M(this,"function"==typeof r?function(t,e,n){t.__transition__[i].delay=+r.call(t,t.__data__,e,n)}:(r=+r,function(t){t.__transition__[i].delay=r}))},fa.duration=function(r){var i=this.id;return M(this,"function"==typeof r?function(t,e,n){t.__transition__[i].duration=Math.max(1,r.call(t,t.__data__,e,n))}:(r=Math.max(1,r),function(t){t.__transition__[i].duration=r}))},fa.each=function(r,n){var i=this.id;if(arguments.length<2){var t=ua,e=sa;sa=i,M(this,function(t,e,n){ua=t.__transition__[i],r.call(t,t.__data__,e,n)}),ua=t,sa=e}else M(this,function(t){var e=t.__transition__[i];(e.event||(e.event=Or.dispatch("start","end"))).on(r,n)});return this},fa.transition=function(){for(var t,e,n,r=this.id,i=++ha,o=[],a=0,s=this.length;a<s;a++){o.push(t=[]);for(var u,l=0,c=(u=this[a]).length;l<c;l++)(e=u[l])&&((n=Object.create(e.__transition__[r])).delay+=n.duration,Ar(e,l,i,n)),t.push(e)}return wr(o,i)},Or.svg.axis=function(){function n(t){t.each(function(){var t,e=Or.select(this),n=null==S?w.ticks?w.ticks.apply(w,E):w.domain():S,r=null==x?w.tickFormat?w.tickFormat.apply(w,E):ct:x,i=e.selectAll(".tick").data(n,ct),o=i.enter().insert("g",".domain").attr("class","tick").style("opacity",1e-6),a=Or.transition(i.exit()).style("opacity",1e-6).remove(),s=Or.transition(i).style("opacity",1),u=tr(w),l=e.selectAll(".domain").data([0]),c=(l.enter().append("path").attr("class","domain"),Or.transition(l)),f=w.copy(),h=this.__chart__||f;this.__chart__=f,o.append("line"),o.append("text");var d=o.select("line"),p=s.select("line"),g=i.select("text").text(r),v=o.select("text"),m=s.select("text");switch(C){case"bottom":t=Er,d.attr("y2",T),v.attr("y",Math.max(T,0)+A),p.attr("x2",0).attr("y2",T),m.attr("x",0).attr("y",Math.max(T,0)+A),g.attr("dy",".71em").style("text-anchor","middle"),c.attr("d","M"+u[0]+","+M+"V0H"+u[1]+"V"+M);break;case"top":t=Er,d.attr("y2",-T),v.attr("y",-(Math.max(T,0)+A)),p.attr("x2",0).attr("y2",-T),m.attr("x",0).attr("y",-(Math.max(T,0)+A)),g.attr("dy","0em").style("text-anchor","middle"),c.attr("d","M"+u[0]+","+-M+"V0H"+u[1]+"V"+-M);break;case"left":t=Sr,d.attr("x2",-T),v.attr("x",-(Math.max(T,0)+A)),p.attr("x2",-T).attr("y2",0),m.attr("x",-(Math.max(T,0)+A)).attr("y",0),g.attr("dy",".32em").style("text-anchor","end"),c.attr("d","M"+-M+","+u[0]+"H0V"+u[1]+"H"+-M);break;case"right":t=Sr,d.attr("x2",T),v.attr("x",Math.max(T,0)+A),p.attr("x2",T).attr("y2",0),m.attr("x",Math.max(T,0)+A).attr("y",0),g.attr("dy",".32em").style("text-anchor","start"),c.attr("d","M"+M+","+u[0]+"H0V"+u[1]+"H"+M)}if(w.rangeBand){var y=f.rangeBand()/2,b=function(t){return f(t)+y};o.call(t,b),s.call(t,b)}else o.call(t,h),s.call(t,f),a.call(t,f)})}var x,w=Or.scale.linear(),C=da,T=6,M=6,A=3,E=[10],S=null;return n.scale=function(t){return arguments.length?(w=t,n):w},n.orient=function(t){return arguments.length?(C=t in pa?t+"":da,n):C},n.ticks=function(){return arguments.length?(E=arguments,n):E},n.tickValues=function(t){return arguments.length?(S=t,n):S},n.tickFormat=function(t){return arguments.length?(x=t,n):x},n.tickSize=function(t){var e=arguments.length;return e?(T=+t,M=+arguments[e-1],n):T},n.innerTickSize=function(t){return arguments.length?(T=+t,n):T},n.outerTickSize=function(t){return arguments.length?(M=+t,n):M},n.tickPadding=function(t){return arguments.length?(A=+t,n):A},n.tickSubdivide=function(){return arguments.length&&n},n};var da="bottom",pa={top:1,right:1,bottom:1,left:1};Or.svg.brush=function(){function b(t){t.each(function(){var t=Or.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",a).on("touchstart.brush",a),e=t.selectAll(".background").data([0]);e.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),t.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var n=t.selectAll(".resize").data(s,ct);n.exit().remove(),n.enter().append("g").attr("class",function(t){return"resize "+t}).style("cursor",function(t){return ga[t]}).append("rect").attr("x",function(t){return/[ew]$/.test(t)?-3:null}).attr("y",function(t){return/^[ns]/.test(t)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),n.style("display",b.empty()?"none":null);var r,i=Or.transition(t),o=Or.transition(e);E&&(r=tr(E),o.attr("x",r[0]).attr("width",r[1]-r[0]),w(i)),S&&(r=tr(S),o.attr("y",r[0]).attr("height",r[1]-r[0]),C(i)),x(i)})}function x(t){t.selectAll(".resize").attr("transform",function(t){return"translate("+N[+/e$/.test(t)]+","+k[+/^s/.test(t)]+")"})}function w(t){t.select(".extent").attr("x",N[0]),t.selectAll(".extent,.n>rect,.s>rect").attr("width",N[1]-N[0])}function C(t){t.select(".extent").attr("y",k[0]),t.selectAll(".extent,.e>rect,.w>rect").attr("height",k[1]-k[0])}function a(){function n(){var t=Or.event.changedTouches;return t?Or.touches(o,t)[0]:Or.mouse(o)}function t(){var t=n(),e=!1;i&&(t[0]+=i[0],t[1]+=i[1]),d||(Or.event.altKey?(f||(f=[(N[0]+N[1])/2,(k[0]+k[1])/2]),g[0]=N[+(t[0]<f[0])],g[1]=k[+(t[1]<f[1])]):f=null),c&&r(t,E,0)&&(w(u),e=!0),h&&r(t,S,1)&&(C(u),e=!0),e&&(x(u),s({type:"brush",mode:d?"move":"resize"}))}function r(t,e,n){var r,i,o=tr(e),a=o[0],s=o[1],u=g[n],l=n?k:N,c=l[1]-l[0];return d&&(a-=u,s-=c+u),r=(n?_:D)?Math.max(a,Math.min(s,t[n])):t[n],d?i=(r+=u)+c:(f&&(u=Math.max(a,Math.min(s,2*f[n]-r))),u<r?(i=r,r=u):i=u),l[0]!=r||l[1]!=i?(n?M=null:T=null,l[0]=r,l[1]=i,!0):void 0}function e(){t(),u.style("pointer-events","all").selectAll(".resize").style("display",b.empty()?"none":null),Or.select("body").style("cursor",null),v.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),p(),s({type:"brushend"})}var f,i,o=this,a=Or.select(Or.event.target),s=A.of(o,arguments),u=Or.select(o),l=a.datum(),c=!/^(n|s)$/.test(l)&&E,h=!/^(e|w)$/.test(l)&&S,d=a.classed("extent"),p=F(),g=n(),v=Or.select(Ur).on("keydown.brush",function(){32==Or.event.keyCode&&(d||(f=null,g[0]-=N[1],g[1]-=k[1],d=2),L())}).on("keyup.brush",function(){32==Or.event.keyCode&&2==d&&(g[0]+=N[1],g[1]+=k[1],d=0,L())});if(Or.event.changedTouches?v.on("touchmove.brush",t).on("touchend.brush",e):v.on("mousemove.brush",t).on("mouseup.brush",e),u.interrupt().selectAll("*").interrupt(),d)g[0]=N[0]-g[0],g[1]=k[0]-g[1];else if(l){var m=+/w$/.test(l),y=+/^n/.test(l);i=[N[1-m]-g[0],k[1-y]-g[1]],g[0]=N[m],g[1]=k[y]}else Or.event.altKey&&(f=g.slice());u.style("pointer-events","none").selectAll(".resize").style("display",null),Or.select("body").style("cursor",a.style("cursor")),s({type:"brushstart"}),t()}var T,M,A=G(b,"brushstart","brush","brushend"),E=null,S=null,N=[0,0],k=[0,0],D=!0,_=!0,s=va[0];return b.event=function(t){t.each(function(){var r=A.of(this,arguments),i={x:N,y:k,i:T,j:M},t=this.__chart__||i;this.__chart__=i,sa?Or.select(this).transition().each("start.brush",function(){T=t.i,M=t.j,N=t.x,k=t.y,r({type:"brushstart"})}).tween("brush:brush",function(){var e=We(N,i.x),n=We(k,i.y);return T=M=null,function(t){N=i.x=e(t),k=i.y=n(t),r({type:"brush",mode:"resize"})}}).each("end.brush",function(){T=i.i,M=i.j,r({type:"brush",mode:"resize"}),r({type:"brushend"})}):(r({type:"brushstart"}),r({type:"brush",mode:"resize"}),r({type:"brushend"}))})},b.x=function(t){return arguments.length?(s=va[!(E=t)<<1|!S],b):E},b.y=function(t){return arguments.length?(s=va[!E<<1|!(S=t)],b):S},b.clamp=function(t){return arguments.length?(E&&S?(D=!!t[0],_=!!t[1]):E?D=!!t:S&&(_=!!t),b):E&&S?[D,_]:E?D:S?_:null},b.extent=function(t){var e,n,r,i,o;return arguments.length?(E&&(e=t[0],n=t[1],S&&(e=e[0],n=n[0]),T=[e,n],E.invert&&(e=E(e),n=E(n)),n<e&&(o=e,e=n,n=o),(e!=N[0]||n!=N[1])&&(N=[e,n])),S&&(r=t[0],i=t[1],E&&(r=r[1],i=i[1]),M=[r,i],S.invert&&(r=S(r),i=S(i)),i<r&&(o=r,r=i,i=o),(r!=k[0]||i!=k[1])&&(k=[r,i])),b):(E&&(T?(e=T[0],n=T[1]):(e=N[0],n=N[1],E.invert&&(e=E.invert(e),n=E.invert(n)),n<e&&(o=e,e=n,n=o))),S&&(M?(r=M[0],i=M[1]):(r=k[0],i=k[1],S.invert&&(r=S.invert(r),i=S.invert(i)),i<r&&(o=r,r=i,i=o))),E&&S?[[e,r],[n,i]]:E?[e,n]:S&&[r,i])},b.clear=function(){return b.empty()||(N=[0,0],k=[0,0],T=M=null),b},b.empty=function(){return!!E&&N[0]==N[1]||!!S&&k[0]==k[1]},Or.rebind(b,A,"on")};var ga={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},va=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]],ma=Or.time={},ya=Date;Nr.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){ba.setUTCDate.apply(this._,arguments)},setDay:function(){ba.setUTCDay.apply(this._,arguments)},setFullYear:function(){ba.setUTCFullYear.apply(this._,arguments)},setHours:function(){ba.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){ba.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){ba.setUTCMinutes.apply(this._,arguments)},setMonth:function(){ba.setUTCMonth.apply(this._,arguments)},setSeconds:function(){ba.setUTCSeconds.apply(this._,arguments)},setTime:function(){ba.setTime.apply(this._,arguments)}};var ba=Date.prototype,xa=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],wa=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],Ca=["January","February","March","April","May","June","July","August","September","October","November","December"],Ta=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];ma.year=kr(function(t){return(t=ma.day(t)).setMonth(0,1),t},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t){return t.getFullYear()}),ma.years=ma.year.range,ma.years.utc=ma.year.utc.range,ma.day=kr(function(t){var e=new ya(2e3,0);return e.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),e},function(t,e){t.setDate(t.getDate()+e)},function(t){return t.getDate()-1}),ma.days=ma.day.range,ma.days.utc=ma.day.utc.range,ma.dayOfYear=function(t){var e=ma.year(t);return Math.floor((t-e-6e4*(t.getTimezoneOffset()-e.getTimezoneOffset()))/864e5)},["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"].forEach(function(t,n){t=t.toLowerCase(),n=7-n;var e=ma[t]=kr(function(t){return(t=ma.day(t)).setDate(t.getDate()-(t.getDay()+n)%7),t},function(t,e){t.setDate(t.getDate()+7*Math.floor(e))},function(t){var e=ma.year(t).getDay();return Math.floor((ma.dayOfYear(t)+(e+n)%7)/7)-(e!==n)});ma[t+"s"]=e.range,ma[t+"s"].utc=e.utc.range,ma[t+"OfYear"]=function(t){var e=ma.year(t).getDay();return Math.floor((ma.dayOfYear(t)+(e+n)%7)/7)}}),ma.week=ma.sunday,ma.weeks=ma.sunday.range,ma.weeks.utc=ma.sunday.utc.range,ma.weekOfYear=ma.sundayOfYear,ma.format=_r;var Ma=Gr(xa),Aa=Fr(xa),Ea=Gr(wa),Sa=Fr(wa),Na=Gr(Ca),ka=Fr(Ca),Da=Gr(Ta),_a=Fr(Ta),La=/^%/,Ga={"-":"",_:" ",0:"0"},Fa={a:function(t){return wa[t.getDay()]},A:function(t){return xa[t.getDay()]},b:function(t){return Ta[t.getMonth()]},B:function(t){return Ca[t.getMonth()]},c:_r("%a %b %e %X %Y"),d:function(t,e){return $r(t.getDate(),e,2)},e:function(t,e){return $r(t.getDate(),e,2)},H:function(t,e){return $r(t.getHours(),e,2)},I:function(t,e){return $r(t.getHours()%12||12,e,2)},j:function(t,e){return $r(1+ma.dayOfYear(t),e,3)},L:function(t,e){return $r(t.getMilliseconds(),e,3)},m:function(t,e){return $r(t.getMonth()+1,e,2)},M:function(t,e){return $r(t.getMinutes(),e,2)},p:function(t){return 12<=t.getHours()?"PM":"AM"},S:function(t,e){return $r(t.getSeconds(),e,2)},U:function(t,e){return $r(ma.sundayOfYear(t),e,2)},w:function(t){return t.getDay()},W:function(t,e){return $r(ma.mondayOfYear(t),e,2)},x:_r("%m/%d/%Y"),X:_r("%H:%M:%S"),y:function(t,e){return $r(t.getFullYear()%100,e,2)},Y:function(t,e){return $r(t.getFullYear()%1e4,e,4)},Z:function(t){var e=t.getTimezoneOffset(),n=0<e?"-":"+",r=~~(Math.abs(e)/60),i=Math.abs(e)%60;return n+$r(r,"0",2)+$r(i,"0",2)},"%":function(){return"%"}},$a={a:function(t,e,n){Ea.lastIndex=0;var r=Ea.exec(e.substring(n));return r?(t.w=Sa.get(r[0].toLowerCase()),n+r[0].length):-1},A:function(t,e,n){Ma.lastIndex=0;var r=Ma.exec(e.substring(n));return r?(t.w=Aa.get(r[0].toLowerCase()),n+r[0].length):-1},b:function(t,e,n){Da.lastIndex=0;var r=Da.exec(e.substring(n));return r?(t.m=_a.get(r[0].toLowerCase()),n+r[0].length):-1},B:function(t,e,n){Na.lastIndex=0;var r=Na.exec(e.substring(n));return r?(t.m=ka.get(r[0].toLowerCase()),n+r[0].length):-1},c:function(t,e,n){return Lr(t,Fa.c.toString(),e,n)},d:Pr,e:Pr,H:Rr,I:Rr,j:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+3));return r?(t.j=+r[0],n+r[0].length):-1},L:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1},m:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1},M:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1},p:function(t,e,n){var r=Ra.get(e.substring(n,n+=2).toLowerCase());return null==r?-1:(t.p=r,n)},S:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1},U:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n));return r?(t.U=+r[0],n+r[0].length):-1},w:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1},W:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n));return r?(t.W=+r[0],n+r[0].length):-1},x:function(t,e,n){return Lr(t,Fa.x.toString(),e,n)},X:function(t,e,n){return Lr(t,Fa.X.toString(),e,n)},y:function(t,e,n){Pa.lastIndex=0;var r,i=Pa.exec(e.substring(n,n+2));return i?(t.y=(r=+i[0])+(68<r?1900:2e3),n+i[0].length):-1},Y:function(t,e,n){Pa.lastIndex=0;var r=Pa.exec(e.substring(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1},"%":function(t,e,n){La.lastIndex=0;var r=La.exec(e.substring(n,n+1));return r?n+r[0].length:-1}},Pa=/^\s*\d+/,Ra=Or.map({am:0,pm:1}),Ia=(_r.utc=Ir)("%Y-%m-%dT%H:%M:%S.%LZ");_r.iso=Date.prototype.toISOString&&+new Date("2000-01-01T00:00:00.000Z")?Vr:Ia,Vr.parse=function(t){var e=new Date(t);return isNaN(e)?null:e},Vr.toString=Ia.toString,ma.second=kr(function(t){return new ya(1e3*Math.floor(t/1e3))},function(t,e){t.setTime(t.getTime()+1e3*Math.floor(e))},function(t){return t.getSeconds()}),ma.seconds=ma.second.range,ma.seconds.utc=ma.second.utc.range,ma.minute=kr(function(t){return new ya(6e4*Math.floor(t/6e4))},function(t,e){t.setTime(t.getTime()+6e4*Math.floor(e))},function(t){return t.getMinutes()}),ma.minutes=ma.minute.range,ma.minutes.utc=ma.minute.utc.range,ma.hour=kr(function(t){var e=t.getTimezoneOffset()/60;return new ya(36e5*(Math.floor(t/36e5-e)+e))},function(t,e){t.setTime(t.getTime()+36e5*Math.floor(e))},function(t){return t.getHours()}),ma.hours=ma.hour.range,ma.hours.utc=ma.hour.utc.range,ma.month=kr(function(t){return(t=ma.day(t)).setDate(1),t},function(t,e){t.setMonth(t.getMonth()+e)},function(t){return t.getMonth()}),ma.months=ma.month.range,ma.months.utc=ma.month.utc.range;var Va=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],ja=[[ma.second,1],[ma.second,5],[ma.second,15],[ma.second,30],[ma.minute,1],[ma.minute,5],[ma.minute,15],[ma.minute,30],[ma.hour,1],[ma.hour,3],[ma.hour,6],[ma.hour,12],[ma.day,1],[ma.day,2],[ma.week,1],[ma.month,1],[ma.month,3],[ma.year,1]],qa=Hr([[_r("%Y"),It],[_r("%B"),function(t){return t.getMonth()}],[_r("%b %d"),function(t){return 1!=t.getDate()}],[_r("%a %d"),function(t){return t.getDay()&&1!=t.getDate()}],[_r("%I %p"),function(t){return t.getHours()}],[_r("%I:%M"),function(t){return t.getMinutes()}],[_r(":%S"),function(t){return t.getSeconds()}],[_r(".%L"),function(t){return t.getMilliseconds()}]]);ja.year=ma.year,ma.scale=function(){return jr(Or.scale.linear(),ja,qa)};var Ha={range:function(t,e,n){return Or.range(+t,+e,n).map(qr)}},za=ja.map(function(t){return[t[0].utc,t[1]]}),Ka=Hr([[Ir("%Y"),It],[Ir("%B"),function(t){return t.getUTCMonth()}],[Ir("%b %d"),function(t){return 1!=t.getUTCDate()}],[Ir("%a %d"),function(t){return t.getUTCDay()&&1!=t.getUTCDate()}],[Ir("%I %p"),function(t){return t.getUTCHours()}],[Ir("%I:%M"),function(t){return t.getUTCMinutes()}],[Ir(":%S"),function(t){return t.getUTCSeconds()}],[Ir(".%L"),function(t){return t.getUTCMilliseconds()}]]);return za.year=ma.year.utc,ma.scale.utc=function(){return jr(Or.scale.linear(),za,Ka)},Or.text=ft(function(t){return t.responseText}),Or.json=function(t,e){return ht(t,"application/json",zr,e)},Or.html=function(t,e){return ht(t,"text/html",Kr,e)},Or.xml=ft(function(t){return t.responseXML}),Or}(),GV||(GV={}),function(){"use strict";GV.toggleAllPlots=function(t){window.chrome&&"file:"===window.location.protocol?$("#browseralert").modal():30<$(".plot_btn").length?$("#alert").modal():($("#spinner1").modal({backdrop:"static",keyboard:"false"}),"pressed"!==t.status?(t.status="pressed",$("#show_all_plots").html("Hide All Charts"),GV.showAllPlots()):(t.status="released",$("#show_all_plots").html("Show All Charts"),GV.removeAllPlots()),$("#spinner1").modal("hide"))},GV.showAllPlots=function(){$(".plot_btn").each(function(){"pressed"!==this.status&&GV.addData(this,"all")})},GV.removeAllPlots=function(){$(".tablesorter-childRow").each(function(){$(this).remove()}),$(".plot_btn").each(function(){this.status="released"})},GV.addData=function(t,e){if(window.chrome&&"file:"===window.location.protocol)$("#browseralert").modal();else{var n=$(t).closest("tr"),r=n.attr("data-target"),i=$("#mainrow"+r);i.length&&"pressed"!==t.status?(GV.emptyChildRow(n,r,t),GV.addDataToChildRow(n,r,e)):0===i.length?(GV.createChildRow(n,r,t),GV.addDataToChildRow(n,r,e)):i.length&&GV.removeChildRow(n,i,t),$("table").trigger("update")}},GV.toggleOverviewBtn=function(){if(window.chrome&&"file:"===window.location.protocol)$("#overview").remove();else{var t=$("#overview_btn").data("overviewjson");$.getJSON(t,function(t){var e=$("<span>"+t.less+"</span><br>"),n=$("<span>"+t.evaluation+"</span><br>");$("#overview_btn").hasClass("active")?($("#overview_text").html(n),$("#overview_btn").text("Show Less"),GV.addPlot(t.data,"overview",t.type,t.title,t.footer,t.xtitle,t.ytitle)):($("#overview").find("svg").remove(),$("#overview_text").html(e),$("#overview_btn").text("Show More"))})}},GV.createChildRow=function(t,e,n){var r='<tr class="tablesorter-childRow" id="mainrow'+e+'"><td colspan="12" id="row'+e+'"><div id="'+e+'" class="expanded-child"></div></td></tr>';t.addClass("tablesorter-hasChildRow"),t.after(r),n.status="pressed"},GV.removeChildRow=function(t,e,n){t.removeClass("tablesorter-hasChildRow"),e.remove(),n.status="released"},GV.emptyChildRow=function(t,e,n){var r="#"+e+"explanation";$("#"+e).empty(),$(r).remove(),GV.resetStatusOfOtherButtons(t),n.status="pressed"},GV.resetStatusOfOtherButtons=function(t){t.find("td").each(function(){"pressed"==this.status&&(this.status="released")}),t.find(".plot_btn").each(function(){"pressed"==this.status&&(this.status="released")})},GV.addDataToChildRow=function(t,n,r){var e=t.attr("data-jsonFile");$.getJSON(e,function(t){if("all"===r)for(var e in t.validations)void 0!==t.validations[e].graphs&&GV.generatePlotCommands(t.validations[e].graphs,n);else GV.addExplanation(n,t.validations[r]),void 0!==t.validations[r].graphs&&GV.generatePlotCommands(t.validations[r].graphs,n)})},GV.generatePlotCommands=function(t,e){for(var n=0;n<t.length;n++){var r=t[n];GV.addPlot(r.data,e,r.type,r.title,r.footer,r.xtitle,r.ytitle,r.aux1,r.aux2)}},GV.addExplanation=function(t,e){var n="#row"+t,r="<p><b>Approach:</b> "+e.approach+"</p>",i="<p><b>Explanation:</b> "+e.explanation+"</p>",o="<p><b>Conclusion:</b> "+e.conclusion+"</p>",a=$('<div id="'+t+'explanation" class="alert alert-info explanation_alert" role="alert">'+r+i+o+"</div>");$(n).prepend(a)},GV.addPlot=function(t,e,n,r,i,o,a,s,u){var l;switch(l=""===i?[]:i.split(";"),n){case"scatter":GV.plot_scatter(t,e,r,i,o,a,s,u);break;case"bars":GV.plot_bars(t,e,r,l,o,a,s);break;case"simplebars":GV.plot_simple_bars(t,e,r,l,o,a);break;case"lines":null!==u&&(u=u.split(",")),GV.plot_lines(t,e,r,l,o,a,s,u);break;case"align":null!==u&&(u=u.split(",")),GV.plot_align(t,e,r,l,o,a,s,u)}},GV.color_beautification=function(t){switch(t){case"red":return d3.rgb(189,54,47);case"blue":return d3.rgb(58,135,173);case"green":return d3.rgb(70,136,71);case"yellow":return d3.rgb(255,255,51);case"orange":return d3.rgb(248,148,6);case"violet":return d3.rgb(153,0,153);case"gray":return d3.rgb(160,160,160);default:return t}},GV.plot_bars=function(t,e,n,r,i,o,a){var s=70,u=50,l=75,c=50,f=600-c-u,h=500-s-l,d=d3.select("#".concat(e)).append("svg").attr("width",f+c+u).attr("height",h+s+l).append("g").attr("transform","translate("+c+","+s+")");d.append("text").attr("x",f/2).attr("y",-45).attr("text-anchor","middle").style("font-size","16px").text(n);var p=[].concat.apply([],t),g=d3.max(p,function(t){return t.value})+3,v=d3.scale.linear().domain([0,g+g/10]).range([h,0]),m=d3.min(p,function(t){return t.key});void 0!==a&&(m=Math.min(m,a));var y=d3.max(p,function(t){return t.key});void 0!==a&&(y=Math.max(y,a));var b=d3.scale.linear().domain([m-100,y+100]).range([13,f]),x=d3.svg.axis().scale(b).orient("bottom").ticks(8),w=d3.svg.axis().scale(v).orient("left").tickFormat(d3.format("d")).ticks(8);d.append("g").attr("class","x axis").attr("transform","translate(0,"+h+")").call(x).append("text").attr("class","label").attr("x",(f-i.length)/2-50).attr("y",35).style("text-anchor","start").text(i),d.append("g").attr("class","y axis").call(w).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(h+o.length)/2-50).attr("y",-40).style("text-anchor","start").text(o),t.map(function(t){d.selectAll(".bar").data(t).enter().append("rect").attr("x",function(t){return b(t.key)}).attr("width",6).attr("y",function(t){return v(t.value)}).attr("height",function(t){return h-v(t.value)}).attr("fill",function(t){return!0===t.main?GV.color_beautification("red"):GV.color_beautification("blue")})}),void 0!==a&&(d.append("rect").attr("x",b(a)).attr("width",4).attr("y",v(g+g/10)).style("opacity",.6).attr("height",h-v(g+g/8)).attr("fill",GV.color_beautification("black")),d.append("text").attr("transform","rotate(-90)").attr("x",-g/10-35).attr("y",b(a)-5).text("query"));for(var C=0,T=0,M=0;M<r.length;M++){T=T+8*r[M].split(",")[0].length+15}for(var A=0;A<r.length;A++){var E=r[A].split(",");d.append("rect").attr("x",(f-T)/2+C).attr("y",-30).attr("width",10).attr("height",10).style("fill",GV.color_beautification(E[1].replace(/\s+/g,""))),d.append("text").attr("x",(f-T)/2+C+15).attr("y",-20).text(E[0]),C=C+8*E[0].length+15}},GV.plot_simple_bars=function(t,e,n,r,i,o){var a=70,s=50,u=75,l=50,c=600-l-s,f=500-a-u,h=d3.select("#".concat(e)).append("svg").attr("width",c+l+s).attr("height",f+a+u).append("g").attr("transform","translate("+l+","+a+")");h.append("text").attr("x",c/2).attr("y",-45).attr("text-anchor","middle").style("font-size","16px").text(n);var d=[].concat.apply([],t),p=d3.max(d,function(t){return t.value})+3,g=d3.scale.linear().domain([0,p]).range([f,0]),v=d3.min(d,function(t){return t.key}),m=d3.max(d,function(t){return t.key}),y=d3.scale.linear().domain([v-0,m+0]).range([13,c]),b=d3.svg.axis().scale(y).orient("bottom").ticks(8),x=d3.svg.axis().scale(g).orient("left").tickFormat(d3.format("d")).ticks(8);h.append("g").attr("class","x axis").attr("transform","translate(0,"+f+")").call(b).append("text").attr("class","label").attr("x",(c-i.length)/2-50).attr("y",35).style("text-anchor","start").text(i),h.append("g").attr("class","y axis").call(x).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(f+o.length)/2-50).attr("y",-40).style("text-anchor","start").text(o),t.map(function(t){h.selectAll(".bar").data(t).enter().append("rect").attr("x",function(t){return y(t.key)}).attr("width",6).attr("y",function(t){return g(t.value)}).attr("height",function(t){return f-g(t.value)}).attr("fill",function(t){return!0===t.main?GV.color_beautification("red"):GV.color_beautification("blue")})})},GV.plot_scatter=function(t,e,n,r,i,o,a,s){var u=50,l=30,c=75,f=50,h=500-f-l,d=500-u-c,p=d3.scale.linear().range([0,h]),g=d3.scale.linear().range([d,0]),v=(d3.scale.category10(),d3.svg.axis().scale(p).orient("bottom").ticks(8)),m=d3.svg.axis().scale(g).orient("left").tickFormat(d3.format("d")).ticks(8),y=d3.select("#".concat(e)).append("svg").attr("width",h+f+l).attr("height",d+u+c).append("g").attr("transform","translate("+f+","+u+")");y.append("text").attr("x",h/2).attr("y",-25).attr("text-anchor","middle").style("font-size","16px").text(n),y.append("text").attr("x",h/2).attr("y",d+55).attr("text-anchor","middle").style("font-size","12px").text(r);var b=d3.max(t,function(t){return t.x}),x=d3.min(t,function(t){return t.x}),w=d3.max(t,function(t){return t.y}),C=d3.min(t,function(t){return t.y});if(p.domain(d3.extent(t,function(t){return t.x})).nice(),g.domain(d3.extent(t,function(t){return t.y})).nice(),y.append("g").attr("class","x axis").attr("transform","translate(0,"+d+")").call(v).append("text").attr("class","label").attr("x",(h-i.length)/2-50).attr("y",35).style("text-anchor","start").text(i),y.append("g").attr("class","y axis").call(m).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(d+o.length)/2-50).attr("y",-40).style("text-anchor","start").text(o),y.selectAll(".dot").data(t).enter().append("circle").attr("r",2).attr("cx",function(t){return p(t.x)}).attr("cy",function(t){return g(t.y)}).style("fill",function(){return GV.color_beautification("red")}).style("opacity",.6),void 0!==s&&""!==s&&void 0!==a&&""!==a){var T=b,M=(a=parseFloat(a.replace(",",".")))+s*b;w<M&&(T=(w-a)/s,M=w),M<C&&(T=(C-a)/s,M=C);var A=x,E=a+s*x;w<E&&(A=(w-a)/s,E=C),E<C&&(A=(C-a)/s,E=C),y.append("line").attr("x1",p(A)).attr("y1",g(E)).attr("x2",p(T)).attr("y2",g(M)).attr("stroke-width",2).attr("stroke","black")}},GV.plot_lines=function(t,e,n,r,i,o,a,s){var u=70,l=50,c=75,f=50,h=600-f-l,d=500-u-c,p=d3.scale.linear().range([0,h]),g=d3.scale.linear().range([d,0]),v=(d3.scale.category10(),"");v="Open Reading Frames in all 6 Frames"===n?d3.svg.axis().scale(p).orient("bottom").ticks(0):d3.svg.axis().scale(p).orient("bottom").ticks(5);var m=d3.svg.axis().scale(g).orient("left").ticks(5),y=d3.select("#".concat(e)).append("svg").attr("width",h+f+l).attr("height",d+u+c).append("g").attr("transform","translate("+f+","+u+")");y.append("text").attr("x",h/2).attr("y",-35).attr("text-anchor","middle").style("font-size","16px").text(n);var b=-1;p.domain([0,d3.max(t,function(t){return t.stop})]),g.domain(d3.extent(t,function(t){return t.y})).nice(),y.append("g").attr("class","x axis").attr("transform","translate(0,"+(d+d/a)+")").call(v).append("text").attr("class","label").attr("x",(h-i.length)/2-50).attr("y",35).style("text-anchor","start").text(i),null!==s?y.append("g").attr("class","y axis").call(m.ticks(s.length).tickFormat(function(){return s[b+=1]})).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(d+o.length)/2-50).attr("y",-40).style("text-anchor","start").text(o):y.append("g").attr("class","y axis").call(m).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(d+o.length)/2).attr("y",-40).style("text-anchor","start").text(o),y.selectAll(".dot").data(t).enter().append("line").attr("x1",function(t){return p(t.start)}).attr("y1",function(t){return g(t.y)}).attr("x2",function(t){return p(t.stop)}).attr("x2",function(t){return p(t.stop)}).attr("y2",function(t){return g(t.y)}).attr("stroke-width",function(t){return void 0===t.dotted?"red"==t.color?d/a/2.5:d/a:d/a/5}).style("stroke-dasharray",function(t){return void 0===t.dotted?"0, 0":"2, 6"}).attr("stroke",function(t){return GV.color_beautification(t.color)});y.append("g").attr("class","legend").attr("height",100).attr("width",100).attr("transform","translate(-20,50)");for(var x=40,w=0,C=0;C<r.length;C++){w=w+8*r[C].split(",")[0].length+15}for(var T=0;T<r.length;T++){var M=r[T].split(",");y.append("rect").attr("x",(h-w)/2+x).attr("y",-30).attr("width",10).attr("height",10).style("fill",GV.color_beautification(M[1].replace(/\s+/g,""))),y.append("text").attr("x",(h-w)/2+x+15).attr("y",-20).text(M[0]),x=x+8*M[0].length+15}},GV.plot_align=function(t,e,n,r,i,o,a,s){var u=75,l=50,c=75,f=150,h=600-f-l,d=300-u-c,p=d3.scale.linear().range([0,h]),g=d3.scale.linear().range([d,0]),v=(d3.scale.category10(),d3.svg.axis().scale(p).orient("bottom").ticks(5)),m=d3.svg.axis().scale(g).orient("left").ticks(5),y=d3.select("#".concat(e)).append("svg").style("vertical-align","top").attr("width",h+f+l).attr("height",d+u+c).append("g").attr("transform","translate("+f+","+u+")");y.append("text").attr("x",h/2).attr("y",-35).attr("text-anchor","middle").style("font-size","16px").text(n);var b=-1;p.domain([0,d3.max(t,function(t){return t.stop})]),g.domain(d3.extent(t,function(t){return t.y})).nice(),y.append("g").attr("class","x axis").attr("transform","translate(0,"+(d+d/a)+")").call(v).append("text").attr("class","label").attr("x",(h-i.length)/2-50).attr("y",35).style("text-anchor","start").text(i),null!==s?y.append("g").attr("class","y axis").call(m.ticks(s.length).tickFormat(function(){return s[b+=1]})).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(d+o.length)/2-50).attr("y",-40).style("text-anchor","start").text(o):y.append("g").attr("class","y axis").call(m).append("text").attr("class","label").attr("transform","rotate(-90)").attr("x",-(d+o.length)/2-50).attr("y",-40).style("text-anchor","start").text(o),y.selectAll(".dot").data(t).enter().append("line").attr("x1",function(t){return p(t.start)}).attr("y1",function(t){return g(t.y)}).attr("x2",function(t){return p(t.stop)}).attr("y2",function(t){return g(t.y)}).attr("stroke-width",function(t){return-1==t.height?d/a:d/a*t.height}).attr("stroke",function(t){return GV.color_beautification(t.color)});for(var x=0,w=0,C=0;C<r.length;C++){w=w+8*r[C].split(",")[0].length+15}for(var T=0;T<r.length;T++){var M=r[T].split(",");y.append("rect").attr("x",(h-w)/2+x).attr("y",-30).attr("width",10).attr("height",10).style("fill",GV.color_beautification(M[1].replace(/\s+/g,""))),y.append("text").attr("x",(h-w)/2+x+15).attr("y",-20).text(M[0]),x=x+8*M[0].length+15}}}(),$(document).ready(function(){"use strict";checkCollapseState(),keepFooterFixedToBottom(),addSeqValidation(),inputValidation(),bindTdClicks(),$(document).bind("keydown",function(t){t.ctrlKey&&13===t.keyCode&&$("#input").trigger("submit")})});var checkCollapseState=function(){"use strict";$.cookie("GeneValidator_adv_params_status")&&("open"===$.cookie("GeneValidator_adv_params_status")&&(document.getElementById("adv_params_btn").innerHTML='<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Hide Advanced Parameters',$("#adv_params").addClass("in")))},keepFooterFixedToBottom=function(){"use strict";$("#mainbody").css({"margin-bottom":$("#footer").height()+15+"px"}),$(window).resize(function(){$("#mainbody").css({"margin-bottom":$("#footer").height()+15+"px"})})},addSeqValidation=function(){"use strict";jQuery.validator.addMethod("checkInputType",function(t,e){var n=[],r="";if(">"===t.charAt(0)){for(var i=t.split(">"),o=1;o<i.length;o++){var a=i[o].split("\n");if(0!==a.length){var s=jQuery.grep(a,function(t){return t});if(0!==s.length){s.shift();var u=s.join("");if(r=checkType(u,.9),n.push(r),"protein"!==r&&"dna"!==r&&"rna"!==r)return!1}}}for(var l=n[0],c=0;c<n.length;c++)if(n[c]!==l)return!1;return!0}return"protein"===(r=checkType(t,.9))||"dna"===r||"rna"===r},"* The Input must be either DNA or protein sequence(s). Please ensure that your sequences do not contains any non-letter character(s). If there are multiple sequences, ensure that they are all of one type. ")},inputValidation=function(){"use strict";var t=$("#seq").attr("data-maxCharacters");$("#input").validate({rules:{seq:{minlength:5,required:!0,checkInputType:!0,maxlength:t},"validations[]":{required:!0}},highlight:function(t){$(t).closest(".form-group").addClass("has-error")},unhighlight:function(t){$(t).closest(".form-group").removeClass("has-error")},errorElement:"span",errorClass:"help-block",errorPlacement:function(t,e){if("validations_group"===e.parent().parent().attr("id")){var n=document.getElementById("lastValidation");t.insertAfter(n)}else e.parent(".input-group").length?t.insertAfter(e.parent()):t.insertAfter(e)},submitHandler:function(t){$("#spinner").modal({backdrop:"static",keyboard:"false"}),ajaxFunction()}})},bindTdClicks=function(){$(document).on("click","td, .plot_btn",function(t){if($(this).hasClass("success")||$(this).hasClass("danger")){var e=$(this).attr("title").replace(/[ \/]/g,"");GV.addData(this,e)}else $(this).hasClass("plot_btn")&&GV.addData(this,"all")})},ajaxFunction=function(){"use strict";$.ajax({type:"POST",url:$("#input").attr("action"),data:$("#input").serialize(),success:function(t){$("#results_box").show(),$("#output").html(t),GV.toggleOverviewBtn(),initTableSorter(),$("[data-toggle='tooltip']").tooltip(),$("#mainbody").css({"background-color":"#fff"}),$("#search").css({"background-color":"#F5F5F5"}),$("#results").css({"border-top":"3px solid #DBDBDB"}),$("#search").css({"margin-bottom":"0"}),$("#spinner").modal("hide")},error:function(t,e){var n;500==t.status||400==t.status?(n=t.responseText,$("#results_box").show(),$("#output").html(n)):(n=t.responseText,$("#results_box").show(),$("#output").html("There seems to be an unidentified Error.")),$("#spinner").modal("hide")}})},initTableSorter=function(){"use strict";$.tablesorter.addParser({id:"star_scores",is:function(t){return!1},format:function(t,e,n,r){var i=$(n);return 1===r&&i.attr("data-score")||t},parsed:!1,type:"numeric"}),$("table").tablesorter({headers:{1:{sorter:"star_scores"}},sortList:[[0,0]]})},changeAdvParamsBtnText=function(){"use strict";var t=document.getElementById("adv_params_btn");'<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Show Advanced Parameters'===t.innerHTML?(t.innerHTML='<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Hide Advanced Parameters',$("#adv_params").collapse("show"),$.cookie("GeneValidator_adv_params_status","open")):(t.innerHTML='<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Show Advanced Parameters',$("#adv_params").collapse("hide"),$.cookie("GeneValidator_adv_params_status","closed"))},examplarSequence=function(t){"use strict";"dna"===t?document.getElementById("seq").value=">Insulin\nATGGCTCTCTGGATCCGGTCGCTGCCTCTCCTGGCCCTTCTTGCTCTTTCTGGCCCTGGGATCAGCCACGCAGCTGCCAACCAGCACCTCTGTGGCTCCCACTTGGTTGAGGCTCTCTACCTGGTGTGTGGGGAGCGGGGTTTCTTCTACTCCCCCAAAACACGGCGGGACGTTGAGCAGCCTCTAGTGAACGGTCCCCTGCATGGCGAGGTGGGAGAGCTGCCGTTCCAGCATGAGGAATACCAGAAAGTCAAGCGAGGCATCGTTGAGCAATGCTGTGAAAACCCGTGCTCCCTCTACCAACTGGAAAACTACTGCAACTAG\n>Insulin (with a duplication)\nATGGCTCTCTGGATCCGGTCGCTGCCTCTCCTGGCCCTTCTTGCTCTTTCTGGCCCTGGGATCAGCCACGCAGCTGCCAACCAGCACCTCTGTGGCTCCCACTTGGTTGAGGCTCTCTACCTGGTGTGTGGGGAGCGGGGTTTCTTCTACTCCCCCAAAACACGGCGGGACGTTGAGCAGCCTCTAGTGAACGGTCCCCTGCATGGCGAGGTGGGAGAGCTGCCGTTCCAGCATGAGGAATACCAGACAGCACCTCTGTGGCTCCCACTTGGTTGAGGCTCTCTACCTGGTGTGTGGGGAGCGGGGTTTCTTCTACTCCCCCAAAACACGGCGGGACGTTGAGCAGCCTCTAGTGAACGGTCCCCTGCATGGCGAGGTGGGAGAGCTGCCGTTCCAGCATGAGGAATACCAGAAAGTCAAGCGAGGCATCGTTGAGCAATGCTGTGAAAACCCGTGCTCCCTCTACCAACTGGAAAACTACTGCAACTAG":"protein"===t&&(document.getElementById("seq").value=">Methylmalonyl-CoA carboxyltransferase 12S \nMAENNNLKLASTMEGRVEQLAEQRQVIEAGGGERRVEKQHSQGKQTARERLNNLLDPHSFDEVGAFRKHRTTLFGMDKAVVPADGVVTGRGTILGRPVHAASQDFTVMGGSAGETQSTKVVETMEQALLTGTPFLFFYDSGGARIQEGIDSLSGYGKMFFANVKLSGVVPQIAIIAGPCAGGASYSPALTDFIIMTKKAHMFITGPQVIKSVTGEDVTADELGGAEAHMAISGNIHFVAEDDDAAELIAKKLLSFLPQNNTEEASFVNPNNDVSPNTELRDIVPIDGKKGYDVRDVIAKIVDWGDYLEVKAGYATNLVTAFARVNGRSVGIVANQPSVMSGCLDINASDKAAEFVNFCDSFNIPLVQLVDVPGFLPGVQQEYGGIIRHGAKMLYAYSEATVPKITVVLRKAYGGSYLAMCNRDLGADAVYAWPSAEIAVMGAEGAANVIFRKEIKAADDPDAMRAEKIEEYQNAFNTPYVAAARGQVDDVIDPADTRRKIASALEMYATKRQTRPAKKPWKLPLLSEEEIMADEEEKDLMIATLNKRVASLESELGSLQSDTQGVTEDVLTAISAVAAYLGNDGSAEVVHFAPSPNWVREGRRALQNHSIR\n>locus=Si_gnF\nMWFPVVLLLLVGVAVAMPDHEHAWEPQNEYQYSVFVRTLTGVDTLKQQYTGIQLKGVLVIQVKSEELLQAKYINPRYAHIHQELSNGPYSKIPEENLEYRDIPMSGKPFEIKLKHGVIRDLLFDRNVPTWEVNMLKGIVGQLQIDTQGENAIDSQSTQIPSNSEPSSATFKAMEDSVGGKCEVLYEITPLPQHVAQTRPDRVPMSSVPSKGHHYEVKKLKNYEKCQERQLYHYGMDVKMTKENMMKRNKVVSELSTTHIVITGTLKSFTIQSTEMKNEITVQPESSDSPIGTVYSITKLTLAKINKISNSWFGPLELSNVESTGNLVYIFNNPFSDSEQRRVGQPSISRNSEQENSLETKKRSFHSHSSSSSSSSSSSSEEENESVMQSKASLRNIFMAPNVPLLPYFIGFKGKTIMKSNEHNVMQLAKDLLLQIAKEIQNPSEGYENTLEKYVNLKNLIRTMDRKQYTELEQYVSQFNKATVEGENAWYTLRDAVVHAGTGPAFVTIENWLKSGQVKGEEAAELLSKIPKSVHQPTPDYIKEFFKLIKSSVVTQQEYVNVSAPLAFAELLRNNYVVPSYYPVHSFGRMTLKGNEEIDNYISYLANQLQQGYLENNTQKIQTFIFALGVTAHPKIISVFEPYLEGKLPTTKYQRMLMVAALYDLSRDIPKLVGPIFYKLYMNENEAHEVRCMAVQQFILTDPPMITLQRVAKYTNYDQSDQVNSAVKSTLNSIINTKRPEWRNLANKARSVRYLVNPKNYDTWYSKGYYIDFENWVFKGLNVKMVASNDAVLPRYVYVGLDSIFNFLRKPTFEVGYAVSSYRQVYDLINELWNSYQFEEMREKSQGSRVEKLAQELKIKSGQKNNLEGHVLFNSVYGSMVYPYDKHRIREAVAALKKLLTSDSKLKTTAFNNFEKIVSFPMEMGVPFVYSFELPVFVKSEINFKKGEPITSRSGVYETLFCNRVQKRFGFIAPFEYQNYIAGIDKNGIMRVPLKYETNIDIKQKNFALKIHPNIPQSGTSTGLTHYSVVPFTTRQNIFNLQPVSNEGNTRPVITSEIHKMTKEKGPFSIKIESDTTKKESVLEDIVTGISKSSNSNNERYMKIDTTFESKQVAKCEIQIDMTFDAVTIHGKNQQPSHKEMQHHSKLDWKPNSKERREEIVNVLSAGLKSGTVFVADVSFSLPRLQDNTYVFTVGSVRSNIDQKLRHYFYVNTNAAQEVKYELCYSQEVQYAYPTPLNFEYAINNEPKDKLKGVLRYGRTCNTGNEIVITGSSSQSPQLRDMIENSSITKQCMEEIQKGKKSVRTCNKATDVAQVRDQLNFHIDASQLSEIRQKYDQVIGLLNYTNLSQYNVQQNSETNTIVVQNPWVMVPTVQEPWYRWAIKPSESQRQSEIDVLLDEVSQPSCTLDNDKILTFDNQLYNVQLGKCKHVLLTTYPQDSHNRRNYIPESSKVAVLAKDTDNDSRNVYVWLGNLEIELKKVGNDLKVAINGQNVEIPEKGHQESNGNEIIFEIVQLPDGSLSVISEKYGITVIFDGKHVRLYANGATYRNAIRGLCGNYDSRRDNDFLTPKNCLLTKPEEFAATYAMTNENCQGPAPENKRKAEGAMCIEVPEQQQMNVISDREAGRMMTEGGNWGYHQSNRKKEHGQDSKRGHGHKKYNQKDSQEGGSNESQYRKKHNIVYRTRVVEMDDKICFTTTPVPGCLQDTRPVERVPKKYDLYCLSKNNESMDLKRRVEEGAKPDFTQKPVNKIQNFQIPVSCSAA")},checkType=function(t,e,n,r){"use strict";void 0===e&&(e=.9),void 0===n&&(n=1e4),void 0===r&&(r=1);var i=t.slice(r-1,n),o=i.replace(/N/gi,""),a=o.length,s=(o.match(/[ACG]/gi)||[]).length/a,u=(o.match(/[T]/gi)||[]).length/a,l=(o.match(/[U]/gi)||[]).length/a,c=i.replace(/X/gi,"").length,f=(i.match(/[ARNDCQEGHILKMFPSTWYV\*]/gi)||[]).length/c;return e<=s+u||e<=s+l?l<=u?"dna":u<=l?"rna":"dna":e<=f?"protein":void 0};
@@ -10,9 +10,13 @@ section#search
10
10
  - else
11
11
  textarea#seq.form-control autofocus="" name="seq" placeholder="Paste your sequence(s) here..." rows="10" spellcheck="false"
12
12
  .clearfix
13
- button#adv_params_btn.btn.btn-primary type="button" onclick="changeAdvParamsBtnText()"
14
- i.fa.fa-pencil-square-o
15
- | &nbsp;&nbsp;Show Advanced Parameters
13
+ .form-group
14
+ button#input_btn.btn.btn-lg.btn-primary type="submit" value="input"
15
+ i.fa.fa-search
16
+ | &nbsp;&nbsp;Analyse Sequences
17
+ button#adv_params_btn.btn.btn-primary type="button" onclick="changeAdvParamsBtnText()"
18
+ i.fa.fa-pencil-square-o
19
+ | &nbsp;&nbsp;Show Advanced Parameters
16
20
  .clearfix
17
21
  #adv_params.collapse
18
22
  .form-group.form-inline#validations_group
@@ -45,11 +49,6 @@ section#search
45
49
  label.radio-inline.no_indent.col-xs-12
46
50
  <input type="radio" name="database" value="#{db.title.chomp}"> #{db.title.chomp}
47
51
  .clearfix
48
- .form-group
49
- button#input_btn.btn.btn-lg.btn-primary type="submit" value="input"
50
- i.fa.fa-search
51
- | &nbsp;&nbsp;Analyse Sequences
52
- .clearfix
53
52
  .show_examples_text
54
53
  span
55
54
  a#protein_example onclick="examplarSequence('protein')"
@@ -8,11 +8,9 @@ html lang="en"
8
8
  meta content="Wurmlab" name="author"
9
9
  title GeneValidator | Identify problems with Gene Predictions
10
10
 
11
- script type="text/javascript" src="#{uri('web_files/js/GV_compiled_js.min.js')}"
12
-
13
- /! Bootstrap core CSS
14
- link href="#{uri('web_files/css/GV_compiled_css.min.css')}" rel="stylesheet" type="text/css"
11
+ link href="#{uri('web_files/css/gv.compiled.min.css')}" rel="stylesheet" type="text/css"
15
12
 
13
+ script type="text/javascript" src="#{uri('web_files/js/gv.compiled.min.js')}"
16
14
  /! HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries
17
15
  /![if lt IE 9]
18
16
  script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: genevalidatorapp
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.4
4
+ version: 2.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Monica Dragan
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2018-08-15 00:00:00.000000000 Z
14
+ date: 2018-09-05 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: capybara
@@ -144,7 +144,6 @@ files:
144
144
  - public/GeneValidator/loading.html
145
145
  - public/src/css/bootstrap1.min.css
146
146
  - public/src/css/custom.css
147
- - public/src/css/custom.min.css
148
147
  - public/src/css/font-awesome.min.css
149
148
  - public/src/js/bionode-seq.min.js
150
149
  - public/src/js/bootstrap.min.js
@@ -155,14 +154,14 @@ files:
155
154
  - public/src/js/jquery.tablesorter.min.js
156
155
  - public/src/js/jquery.validate.min.js
157
156
  - public/src/js/plots.js
158
- - public/web_files/css/GV_compiled_css.min.css
157
+ - public/web_files/css/gv.compiled.min.css
159
158
  - public/web_files/fonts/FontAwesome.otf
160
159
  - public/web_files/fonts/fontawesome-webfont.eot
161
160
  - public/web_files/fonts/fontawesome-webfont.svg
162
161
  - public/web_files/fonts/fontawesome-webfont.ttf
163
162
  - public/web_files/fonts/fontawesome-webfont.woff
164
163
  - public/web_files/img/gene.png
165
- - public/web_files/js/GV_compiled_js.min.js
164
+ - public/web_files/js/gv.compiled.min.js
166
165
  - public/web_files/json/.gitkeep
167
166
  - test/database/funky_ids/funky_ids.fa
168
167
  - test/database/funky_ids/funky_ids.fa.nhr
@@ -1,3 +0,0 @@
1
- .alert-info,.table td{border-collapse:collapse}.alert-danger p,.explanation_alert p{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:none}.dot,.line1{stroke:#000}html{position:relative;min-height:100%}body{margin:60px 0 0;background-color:#F5F5F5}section{width:100%;padding:0 5% 35px;display:table;margin:0;max-width:none}#input_btn,.alert-info,.expanded-child{display:block}.nav-container{width:100%;padding:0 5%;margin:0}.navbar-brand{padding-left:0}footer{bottom:0;width:100%;margin:0 auto;position:absolute;border-top:2px solid #DBDBDB;padding-top:10px}#adv_params_btn,#input_btn{margin-left:auto;margin-right:auto}.alert-danger{background-color:#f2dede}.alert-danger p{font-size:14px;line-height:20px;text-align:left;font-weight:400;color:#ff1c21}.alert-danger h3{color:#ff1c21}.fa-github,.navbar-brand a{color:#fff}.navbar-brand,.navbar-nav>li>a{line-height:27px}.navbar-brand a:hover{text-decoration:none}.navbar-nav>li>a.nav_github_icon{padding-top:0;padding-bottom:0}.fa-github{padding-top:18px;padding-bottom:18px}h1 .small{color:#2C3E50}.table,.table .danger,.table .info,.table .success,.table .warning,table .danger,table .info,table .success,table .warning{color:#333}.input_seq-label{font-size:26px}#dna_example,#protein_example{cursor:pointer}#adv_params_btn{display:block;margin-top:5px}#input_btn{margin-top:20px}.show_examples_text{font-size:17px;text-align:center}.control-label{font-size:1.25em;font-weight:400}.checkbox label,.help-block,.radio label,label{font-size:.9em;font-weight:inherit}.checkbox.inline.no_indent+.checkbox.inline.no_indent{margin-left:0;margin-right:10px}.checkbox.inline.no_indent:last-child{margin-right:0}label.checkbox-inline.no_indent,label.radio-inline.no_indent{margin-left:0;margin-right:10px}#results_header{margin-top:0;margin-bottom:30px}.alert-info,.explanation_alert{margin-bottom:0}#results_link_btn{margin-top:0;margin-right:-15px}.table thead tr{border-bottom:3px solid #DDD}.table td{font-size:13px!important;border-color:#ddd!important;vertical-align:middle!important;background-clip:padding-box;text-align:left}.danger{background-color:#f2dede!important}.danger:hover{background-color:#f2cbcb!important}.success{background-color:#dff0d8!important}.success:hover{background-color:#cce4c8!important}.warning{background-color:#fcf8e3!important}.alert-info{background-color:#d9edf7;border-color:#bce8f1;border-style:solid;border-width:1px;box-sizing:border-box;color:#31708f;padding:15px}.explanation_alert p{font-size:14px;line-height:20px;text-align:left;font-weight:400}#toggle,.expanded-child{text-align:center}.plot_btn{color:#333;background-color:#fff;border-color:#ccc}.plot_btn:hover{color:#333;background-color:#ebebeb;border-color:#adadad}.table-bordered>tbody>tr{border-bottom:2px solid #DDD}.error_header{margin-top:10px}.table-responsive{overflow-x:auto}.table th,.table thead td{background-color:#E8E8E8;white-space:nowrap}tr{height:39px}.tablesorter-default .header,.tablesorter-default .tablesorter-header{background-image:url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);background-position:center right;background-repeat:no-repeat;cursor:pointer;padding:4px 20px 4px 4px}.tablesorter-default thead .headerSortUp,.tablesorter-default thead .tablesorter-headerAsc,.tablesorter-default thead .tablesorter-headerSortUp{background-image:url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);border-bottom:#000 3px solid!important}.tablesorter-default thead .headerSortDown,.tablesorter-default thead .tablesorter-headerDesc,.tablesorter-default thead .tablesorter-headerSortDown{background-image:url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);border-bottom:#000 3px solid!important}.tablesorter-default thead .sorter-false{background-image:none;cursor:default;padding:4px}.tablesorter-default .tablesorter-processing{background-position:center center!important;background-repeat:no-repeat!important;background-image:url(data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=)!important}.table tbody td.danger,.table tbody td.success,.table tbody td.warning{padding-left:30px!important;position:relative}.table tbody td.danger:before,.table tbody td.success:before,.table tbody td.warning:before{font-family:FontAwesome;position:absolute;margin-left:-25px;font-size:1.5em;margin-top:-.75em;top:50%}.table tbody td.success:before{content:"\f058";color:#1AA882}.table tbody td.danger:before{content:"\f057";color:#FC585A}.table tbody td.warning:before{content:"\f06a";color:#FCB83F}.table tbody td.danger,.table tbody td.success{cursor:pointer!important}.tooltip>.tooltip-inner{background-color:#fff;color:#000;border:1px solid #CCC;max-width:275px}.tooltip.top>.tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #CCC}.axis line,.axis path{fill:none;stroke:#000;shape-rendering:crispEdges}.dot{opacity:.7}.line1{fill:green;stroke-width:1.5px;opacity:.5}svg:not(:root){overflow:visible}svg{margin:15px}.ratings{position:relative;vertical-align:middle;display:inline-block;color:#b1b1b1;overflow:hidden}.full-stars{position:absolute;left:0;top:0;white-space:nowrap;overflow:hidden;color:#fde16d}.empty-stars:before,.full-stars:before{font-family:FontAwesome;content:"\f005\f005\f005\f005\f005";font-size:14pt}.empty-stars:before{-webkit-text-stroke:1px #848484}.full-stars:before{-webkit-text-stroke:1px orange}.menu_icon{padding-left:10px;font-weight:700}.tooltip-inner{white-space:pre-wrap;min-width:100px}#report{text-align:left}@media (min-width:768px){#adv_params_btn{float:left!important;margin-top:5px}#input_btn{float:right!important;margin-top:-43px}.show_examples_text{text-align:left}.container{width:90%}}@-moz-document url-prefix(){.full-stars{color:#ECBE24}}<!--[ifIE]>.full-stars{color:#ECBE24}
2
- <![endif]-->
3
- __ESCAPED_SOURCE_END_CLEAN_CSS__
@@ -1,15 +0,0 @@
1
- @import url("//fonts.googleapis.com/css?family=Lato:400,700,400italic");/*!
2
- * bootswatch v3.3.1+2
3
- * Homepage: http://bootswatch.com
4
- * Copyright 2012-2014 Thomas Park
5
- * Licensed under MIT
6
- * Based on Bootstrap
7
- *//*! normalize.css v3.0.2 | 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,menu,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-color: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;-webkit-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"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;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}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;-webkit-box-shadow:none !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]: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}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}@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,.glyphicon-eur: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"}*{-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:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:1.42857143;color:#2c3e50;background-color:#ffffff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#18bc9c;text-decoration:none}a:hover,a:focus{color:#18bc9c;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,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#ffffff;border:1px solid #ecf0f1;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-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:21px;margin-bottom:21px;border:0;border-top:1px solid #ecf0f1}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;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:#b4bcc2}h1,.h1,h2,.h2,h3,.h3{margin-top:21px;margin-bottom:10.5px}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:10.5px;margin-bottom:10.5px}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:39px}h2,.h2{font-size:32px}h3,.h3{font-size:26px}h4,.h4{font-size:19px}h5,.h5{font-size:15px}h6,.h6{font-size:13px}p{margin:0 0 10.5px}.lead{margin-bottom:21px;font-size:17px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:22.5px}}small,.small{font-size:86%}mark,.mark{background-color:#f39c12;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#b4bcc2}.text-primary{color:#2c3e50}a.text-primary:hover{color:#1a242f}.text-success{color:#ffffff}a.text-success:hover{color:#e6e6e6}.text-info{color:#ffffff}a.text-info:hover{color:#e6e6e6}.text-warning{color:#ffffff}a.text-warning:hover{color:#e6e6e6}.text-danger{color:#ffffff}a.text-danger:hover{color:#e6e6e6}.bg-primary{color:#fff;background-color:#2c3e50}a.bg-primary:hover{background-color:#1a242f}.bg-success{background-color:#18bc9c}a.bg-success:hover{background-color:#128f76}.bg-info{background-color:#3498db}a.bg-info:hover{background-color:#217dbb}.bg-warning{background-color:#f39c12}a.bg-warning:hover{background-color:#c87f0a}.bg-danger{background-color:#e74c3c}a.bg-danger:hover{background-color:#d62c1a}.page-header{padding-bottom:9.5px;margin:42px 0 21px;border-bottom:1px solid transparent}ul,ol{margin-top:0;margin-bottom:10.5px}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;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:21px}dt,dd{line-height:1.42857143}dt{font-weight:bold}dd{margin-left:0}@media (min-width:768px){.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 #b4bcc2}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10.5px 21px;margin:0 0 21px;font-size:18.75px;border-left:5px solid #ecf0f1}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.42857143;color:#b4bcc2}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 #ecf0f1;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'}address{margin-bottom:21px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#ffffff;background-color:#333333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:10px;margin:0 0 10.5px;font-size:14px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#7b8a8b;background-color:#ecf0f1;border:1px solid #cccccc;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.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.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.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.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.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.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.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#b4bcc2;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:21px}.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.42857143;vertical-align:top;border-top:1px solid #ecf0f1}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ecf0f1}.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 #ecf0f1}.table .table{background-color:#ffffff}.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 #ecf0f1}.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 #ecf0f1}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#ecf0f1}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:#ecf0f1}.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:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#dde4e6}.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:#18bc9c}.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:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#15a589}.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:#3498db}.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:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#258cd1}.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:#f39c12}.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:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#e08e0b}.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:#e74c3c}.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:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#e43725}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15.75px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ecf0f1}.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:21px;font-size:22.5px;line-height:inherit;color:#2c3e50;border:0;border-bottom:1px solid transparent}label{display:inline-block;max-width:100%;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:11px;font-size:15px;line-height:1.42857143;color:#2c3e50}.form-control{display:block;width:100%;height:43px;padding:10px 15px;font-size:15px;line-height:1.42857143;color:#2c3e50;background-color:#ffffff;background-image:none;border:1px solid #dce4ec;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,-webkit-box-shadow ease-in-out .15s;-o-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:#2c3e50;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(44,62,80,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(44,62,80,0.6)}.form-control::-moz-placeholder{color:#acb6c0;opacity:1}.form-control:-ms-input-placeholder{color:#acb6c0}.form-control::-webkit-input-placeholder{color:#acb6c0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#ecf0f1;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:43px}input[type="date"].input-sm,input[type="time"].input-sm,input[type="datetime-local"].input-sm,input[type="month"].input-sm{line-height:33px}input[type="date"].input-lg,input[type="time"].input-lg,input[type="datetime-local"].input-lg,input[type="month"].input-lg{line-height:64px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:21px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.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],input[type="radio"].disabled,input[type="checkbox"].disabled,fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:11px;padding-bottom:11px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.input-sm,.form-group-sm .form-control{height:33px;padding:6px 9px;font-size:13px;line-height:1.5;border-radius:3px}select.input-sm,select.form-group-sm .form-control{height:33px;line-height:33px}textarea.input-sm,textarea.form-group-sm .form-control,select[multiple].input-sm,select[multiple].form-group-sm .form-control{height:auto}.input-lg,.form-group-lg .form-control{height:64px;padding:18px 27px;font-size:19px;line-height:1.33;border-radius:6px}select.input-lg,select.form-group-lg .form-control{height:64px;line-height:64px}textarea.input-lg,textarea.form-group-lg .form-control,select[multiple].input-lg,select[multiple].form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:53.75px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:43px;height:43px;line-height:43px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback{width:64px;height:64px;line-height:64px}.input-sm+.form-control-feedback{width:33px;height:33px;line-height:33px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#ffffff}.has-success .form-control{border-color:#ffffff;-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:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-success .input-group-addon{color:#ffffff;border-color:#ffffff;background-color:#18bc9c}.has-success .form-control-feedback{color:#ffffff}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#ffffff}.has-warning .form-control{border-color:#ffffff;-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:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-warning .input-group-addon{color:#ffffff;border-color:#ffffff;background-color:#f39c12}.has-warning .form-control-feedback{color:#ffffff}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#ffffff}.has-error .form-control{border-color:#ffffff;-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:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-error .input-group-addon{color:#ffffff;border-color:#ffffff;background-color:#e74c3c}.has-error .form-control-feedback{color:#ffffff}.has-feedback label~.form-control-feedback{top:26px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#597ea2}@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 .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.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;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:11px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:32px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:11px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:24.94px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:7px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:10px 15px;font-size:15px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#ffffff;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:0.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#ffffff;background-color:#95a5a6;border-color:#95a5a6}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#ffffff;background-color:#798d8f;border-color:#74898a}.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.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:#95a5a6;border-color:#95a5a6}.btn-default .badge{color:#95a5a6;background-color:#ffffff}.btn-primary{color:#ffffff;background-color:#2c3e50;border-color:#2c3e50}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#ffffff;background-color:#1a242f;border-color:#161f29}.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.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:#2c3e50;border-color:#2c3e50}.btn-primary .badge{color:#2c3e50;background-color:#ffffff}.btn-success{color:#ffffff;background-color:#18bc9c;border-color:#18bc9c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#ffffff;background-color:#128f76;border-color:#11866f}.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.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:#18bc9c;border-color:#18bc9c}.btn-success .badge{color:#18bc9c;background-color:#ffffff}.btn-info{color:#ffffff;background-color:#3498db;border-color:#3498db}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#ffffff;background-color:#217dbb;border-color:#2077b2}.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.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:#3498db;border-color:#3498db}.btn-info .badge{color:#3498db;background-color:#ffffff}.btn-warning{color:#ffffff;background-color:#f39c12;border-color:#f39c12}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#ffffff;background-color:#c87f0a;border-color:#be780a}.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.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:#f39c12;border-color:#f39c12}.btn-warning .badge{color:#f39c12;background-color:#ffffff}.btn-danger{color:#ffffff;background-color:#e74c3c;border-color:#e74c3c}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#ffffff;background-color:#d62c1a;border-color:#cd2a19}.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.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:#e74c3c;border-color:#e74c3c}.btn-danger .badge{color:#e74c3c;background-color:#ffffff}.btn-link{color:#18bc9c;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.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:#18bc9c;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:#b4bcc2;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:18px 27px;font-size:19px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:6px 9px;font-size:13px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:13px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.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 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height, visibility;-o-transition-property:height, visibility;transition-property:height, visibility;-webkit-transition-duration:0.35s;-o-transition-duration:0.35s;transition-duration:0.35s;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.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:15px;text-align:left;background-color:#ffffff;border:1px solid #cccccc;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);-webkit-background-clip:padding-box;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9.5px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#7b8a8b;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#ffffff;background-color:#2c3e50}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#ffffff;text-decoration:none;outline:0;background-color:#2c3e50}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#b4bcc2}.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:13px;line-height:1.42857143;color:#b4bcc2;white-space:nowrap}.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:768px){.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+.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>.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%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events: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{position:relative;z-index:2;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:64px;padding:18px 27px;font-size:19px;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:64px;line-height:64px}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:33px;padding:6px 9px;font-size:13px;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:33px;line-height:33px}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:10px 15px;font-size:15px;font-weight:normal;line-height:1;color:#2c3e50;text-align:center;background-color:#ecf0f1;border:1px solid #dce4ec;border-radius:4px}.input-group-addon.input-sm{padding:6px 9px;font-size:13px;border-radius:3px}.input-group-addon.input-lg{padding:18px 27px;font-size:19px;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:#ecf0f1}.nav>li.disabled>a{color:#b4bcc2}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#b4bcc2;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#ecf0f1;border-color:#18bc9c}.nav .nav-divider{height:1px;margin:9.5px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ecf0f1}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#ecf0f1 #ecf0f1 #ecf0f1}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#2c3e50;background-color:#ffffff;border:1px solid #ecf0f1;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 #ecf0f1}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ecf0f1;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:#ffffff}}.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:#ffffff;background-color:#2c3e50}.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 #ecf0f1}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ecf0f1;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:#ffffff}}.tab-content>.tab-pane{display:none;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:60px;margin-bottom:21px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);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:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block !important;visibility:visible !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}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.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:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.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:19.5px 15px;font-size:19px;line-height:21px;height:60px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.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:13px;margin-bottom:13px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.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:768px){.navbar-toggle{display:none}}.navbar-nav{margin:9.75px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:21px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;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:21px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:19.5px;padding-bottom:19.5px}}.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:8.5px;margin-bottom:8.5px}@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 .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.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;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.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-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-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8.5px;margin-bottom:8.5px}.navbar-btn.btn-sm{margin-top:13.5px;margin-bottom:13.5px}.navbar-btn.btn-xs{margin-top:19px;margin-bottom:19px}.navbar-text{margin-top:19.5px;margin-bottom:19.5px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width:768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#2c3e50;border-color:transparent}.navbar-default .navbar-brand{color:#ffffff}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#18bc9c;background-color:transparent}.navbar-default .navbar-text{color:#777777}.navbar-default .navbar-nav>li>a{color:#ffffff}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#18bc9c;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#ffffff;background-color:#1a242f}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#cccccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#1a242f}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#1a242f}.navbar-default .navbar-toggle .icon-bar{background-color:#ffffff}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:transparent}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#1a242f;color:#ffffff}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#ffffff}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#18bc9c;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:#ffffff;background-color:#1a242f}.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:#cccccc;background-color:transparent}}.navbar-default .navbar-link{color:#ffffff}.navbar-default .navbar-link:hover{color:#18bc9c}.navbar-default .btn-link{color:#ffffff}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#18bc9c}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#cccccc}.navbar-inverse{background-color:#18bc9c;border-color:transparent}.navbar-inverse .navbar-brand{color:#ffffff}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#2c3e50;background-color:transparent}.navbar-inverse .navbar-text{color:#ffffff}.navbar-inverse .navbar-nav>li>a{color:#ffffff}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#2c3e50;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#ffffff;background-color:#15a589}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#cccccc;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#128f76}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#128f76}.navbar-inverse .navbar-toggle .icon-bar{background-color:#ffffff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#149c82}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#15a589;color:#ffffff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#ffffff}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#2c3e50;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:#ffffff;background-color:#15a589}.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:#cccccc;background-color:transparent}}.navbar-inverse .navbar-link{color:#ffffff}.navbar-inverse .navbar-link:hover{color:#2c3e50}.navbar-inverse .btn-link{color:#ffffff}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#2c3e50}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#cccccc}.breadcrumb{padding:8px 15px;margin-bottom:21px;list-style:none;background-color:#ecf0f1;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#cccccc}.breadcrumb>.active{color:#95a5a6}.pagination{display:inline-block;padding-left:0;margin:21px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:10px 15px;line-height:1.42857143;text-decoration:none;color:#ffffff;background-color:#18bc9c;border:1px solid transparent;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:#ffffff;background-color:#0f7864;border-color:transparent}.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:#ffffff;background-color:#0f7864;border-color:transparent;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:#ecf0f1;background-color:#3be6c4;border-color:transparent;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:18px 27px;font-size:19px}.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:6px 9px;font-size:13px}.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:21px 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:#18bc9c;border:1px solid transparent;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#0f7864}.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:#ffffff;background-color:#18bc9c;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#ffffff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:hover,a.label:focus{color:#ffffff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#95a5a6}.label-default[href]:hover,.label-default[href]:focus{background-color:#798d8f}.label-primary{background-color:#2c3e50}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#1a242f}.label-success{background-color:#18bc9c}.label-success[href]:hover,.label-success[href]:focus{background-color:#128f76}.label-info{background-color:#3498db}.label-info[href]:hover,.label-info[href]:focus{background-color:#217dbb}.label-warning{background-color:#f39c12}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#c87f0a}.label-danger{background-color:#e74c3c}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#d62c1a}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:13px;font-weight:bold;color:#ffffff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#2c3e50;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:#ffffff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#2c3e50;background-color:#ffffff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#ecf0f1}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:23px;font-weight:200}.jumbotron>hr{border-top-color:#cfd9db}.container .jumbotron,.container-fluid .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding:48px 0}.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:67.5px}}.thumbnail{display:block;padding:4px;margin-bottom:21px;line-height:1.42857143;background-color:#ffffff;border:1px solid #ecf0f1;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#18bc9c}.thumbnail .caption{padding:9px;color:#2c3e50}.alert{padding:15px;margin-bottom:21px;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,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#18bc9c;border-color:#18bc9c;color:#ffffff}.alert-success hr{border-top-color:#15a589}.alert-success .alert-link{color:#e6e6e6}.alert-info{background-color:#3498db;border-color:#3498db;color:#ffffff}.alert-info hr{border-top-color:#258cd1}.alert-info .alert-link{color:#e6e6e6}.alert-warning{background-color:#f39c12;border-color:#f39c12;color:#ffffff}.alert-warning hr{border-top-color:#e08e0b}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{background-color:#e74c3c;border-color:#e74c3c;color:#ffffff}.alert-danger hr{border-top-color:#e43725}.alert-danger .alert-link{color:#e6e6e6}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-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:21px;margin-bottom:21px;background-color:#ecf0f1;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:13px;line-height:21px;color:#ffffff;text-align:center;background-color:#2c3e50;-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 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{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:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#18bc9c}.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:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#3498db}.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:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f39c12}.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:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#e74c3c}.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:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.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:#ffffff;border:1px solid #ecf0f1}.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}a.list-group-item{color:#555555}a.list-group-item .list-group-item-heading{color:#333333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;color:#555555;background-color:#ecf0f1}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#ecf0f1;color:#b4bcc2;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#b4bcc2}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#ffffff;background-color:#2c3e50;border-color:#2c3e50}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#8aa4be}.list-group-item-success{color:#ffffff;background-color:#18bc9c}a.list-group-item-success{color:#ffffff}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#ffffff;background-color:#15a589}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-info{color:#ffffff;background-color:#3498db}a.list-group-item-info{color:#ffffff}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#ffffff;background-color:#258cd1}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-warning{color:#ffffff;background-color:#f39c12}a.list-group-item-warning{color:#ffffff}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#ffffff;background-color:#e08e0b}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-danger{color:#ffffff;background-color:#e74c3c}a.list-group-item-danger{color:#ffffff}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#ffffff;background-color:#e43725}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:21px;background-color:#ffffff;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-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:17px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#ecf0f1;border-top:1px solid #ecf0f1;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.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,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-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,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ecf0f1}.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>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>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{border-bottom:0}.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,.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{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:21px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ecf0f1}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ecf0f1}.panel-default{border-color:#ecf0f1}.panel-default>.panel-heading{color:#2c3e50;background-color:#ecf0f1;border-color:#ecf0f1}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ecf0f1}.panel-default>.panel-heading .badge{color:#ecf0f1;background-color:#2c3e50}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ecf0f1}.panel-primary{border-color:#2c3e50}.panel-primary>.panel-heading{color:#ffffff;background-color:#2c3e50;border-color:#2c3e50}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#2c3e50}.panel-primary>.panel-heading .badge{color:#2c3e50;background-color:#ffffff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#2c3e50}.panel-success{border-color:#18bc9c}.panel-success>.panel-heading{color:#ffffff;background-color:#18bc9c;border-color:#18bc9c}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#18bc9c}.panel-success>.panel-heading .badge{color:#18bc9c;background-color:#ffffff}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#18bc9c}.panel-info{border-color:#3498db}.panel-info>.panel-heading{color:#ffffff;background-color:#3498db;border-color:#3498db}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#3498db}.panel-info>.panel-heading .badge{color:#3498db;background-color:#ffffff}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#3498db}.panel-warning{border-color:#f39c12}.panel-warning>.panel-heading{color:#ffffff;background-color:#f39c12;border-color:#f39c12}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#f39c12}.panel-warning>.panel-heading .badge{color:#f39c12;background-color:#ffffff}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#f39c12}.panel-danger{border-color:#e74c3c}.panel-danger>.panel-heading{color:#ffffff;background-color:#e74c3c;border-color:#e74c3c}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#e74c3c}.panel-danger>.panel-heading .badge{color:#e74c3c;background-color:#ffffff}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#e74c3c}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#ecf0f1;border:1px solid transparent;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:22.5px;font-weight:bold;line-height:1;color:#000000;text-shadow:none;opacity:0.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000000;text-decoration:none;cursor:pointer;opacity:0.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:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#ffffff;border:1px solid #999999;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);-webkit-background-clip:padding-box;background-clip:padding-box;outline:0}.modal-backdrop{position:absolute;top:0;right:0;left:0;background-color:#000000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:0.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{padding: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}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@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}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:0.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:#ffffff;text-align:center;text-decoration:none;background-color:rgba(0,0,0,0.9);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:rgba(0,0,0,0.9)}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:rgba(0,0,0,0.9)}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:rgba(0,0,0,0.9)}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:rgba(0,0,0,0.9)}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:rgba(0,0,0,0.9)}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:rgba(0,0,0,0.9)}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:rgba(0,0,0,0.9)}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:rgba(0,0,0,0.9)}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;font-weight:normal;line-height:1.42857143;text-align:left;background-color:#ffffff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #cccccc;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:15px;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:#999999;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:#ffffff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999999;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:#ffffff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999999;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:#ffffff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#ffffff;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;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000;perspective:1000}.carousel-inner>.item.next,.carousel-inner>.item.active.right{-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);left:0}.carousel-inner>.item.prev,.carousel-inner>.item.active.left{-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0);left:0}.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right,.carousel-inner>.item.active{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);left:0}}.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:0.5;filter:alpha(opacity=50);font-size:20px;color:#ffffff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);background-image:-o-linear-gradient(left, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);background-image:-webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.0001)));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, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);background-image:-o-linear-gradient(left, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);background-image:-webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.0001)), to(rgba(0,0,0,0.5)));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:0;color:#ffffff;text-decoration:none;opacity:0.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%;margin-left:-10px}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%;margin-right:-10px}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-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 #ffffff;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:#ffffff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#ffffff;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 .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd: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,.dl-horizontal dd: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,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{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}}@media (max-width:767px){.visible-xs-block{display:block !important}}@media (max-width:767px){.visible-xs-inline{display:inline !important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block !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}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block !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}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block !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 (min-width:1200px){.visible-lg-block{display:block !important}}@media (min-width:1200px){.visible-lg-inline{display:inline !important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width:767px){.hidden-xs{display:none !important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none !important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none !important}}@media (min-width:1200px){.hidden-lg{display:none !important}}.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}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}.navbar{border-width:0}.navbar-default .badge{background-color:#fff;color:#2c3e50}.navbar-inverse .badge{background-color:#fff;color:#18bc9c}.navbar-brand{padding:18.5px 15px 20.5px}.btn:active{-webkit-box-shadow:none;box-shadow:none}.btn-group.open .dropdown-toggle{-webkit-box-shadow:none;box-shadow:none}.text-primary,.text-primary:hover{color:#2c3e50}.text-success,.text-success:hover{color:#18bc9c}.text-danger,.text-danger:hover{color:#e74c3c}.text-warning,.text-warning:hover{color:#f39c12}.text-info,.text-info:hover{color:#3498db}table a:not(.btn),.table a:not(.btn){text-decoration:underline}table .dropdown-menu a,.table .dropdown-menu a{text-decoration:none}table .success,.table .success,table .warning,.table .warning,table .danger,.table .danger,table .info,.table .info{color:#fff}table .success a,.table .success a,table .warning a,.table .warning a,table .danger a,.table .danger a,table .info a,.table .info a{color:#fff}table>thead>tr>th,.table>thead>tr>th,table>tbody>tr>th,.table>tbody>tr>th,table>tfoot>tr>th,.table>tfoot>tr>th,table>thead>tr>td,.table>thead>tr>td,table>tbody>tr>td,.table>tbody>tr>td,table>tfoot>tr>td,.table>tfoot>tr>td{border:none}table-bordered>thead>tr>th,.table-bordered>thead>tr>th,table-bordered>tbody>tr>th,.table-bordered>tbody>tr>th,table-bordered>tfoot>tr>th,.table-bordered>tfoot>tr>th,table-bordered>thead>tr>td,.table-bordered>thead>tr>td,table-bordered>tbody>tr>td,.table-bordered>tbody>tr>td,table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ecf0f1}.form-control,input{border-width:2px;-webkit-box-shadow:none;box-shadow:none}.form-control:focus,input:focus{-webkit-box-shadow:none;box-shadow:none}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning .form-control-feedback{color:#f39c12}.has-warning .form-control,.has-warning .form-control:focus{border:2px solid #f39c12}.has-warning .input-group-addon{border-color:#f39c12}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error .form-control-feedback{color:#e74c3c}.has-error .form-control,.has-error .form-control:focus{border:2px solid #e74c3c}.has-error .input-group-addon{border-color:#e74c3c}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success .form-control-feedback{color:#18bc9c}.has-success .form-control,.has-success .form-control:focus{border:2px solid #18bc9c}.has-success .input-group-addon{border-color:#18bc9c}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{border-color:transparent}.pager a,.pager a:hover{color:#fff}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{background-color:#3be6c4}.close{color:#fff;text-decoration:none;opacity:0.4}.close:hover,.close:focus{color:#fff;opacity:1}.alert .alert-link{color:#fff;text-decoration:underline}.progress{height:10px;-webkit-box-shadow:none;box-shadow:none}.progress .progress-bar{font-size:10px;line-height:10px}.well{-webkit-box-shadow:none;box-shadow:none}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{border-color:#ecf0f1}a.list-group-item-success.active{background-color:#18bc9c}a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{background-color:#15a589}a.list-group-item-warning.active{background-color:#f39c12}a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{background-color:#e08e0b}a.list-group-item-danger.active{background-color:#e74c3c}a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{background-color:#e43725}.panel-default .close{color:#2c3e50}.modal .close{color:#2c3e50}.popover{color:#2c3e50}
8
- /*FontAwesome */
9
- /*!
10
- * Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome
11
- * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
12
- */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.1.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.1.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.1.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.1.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-square:before,.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}
13
- /*custom*/
14
- .alert-info,.table td{border-collapse:collapse}.alert-danger p,.explanation_alert p{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}.dot,.line1{stroke:#000}html{position:relative;min-height:100%}body{margin:60px 0 0;background-color:#F5F5F5}section{width:100%;padding:0 5% 35px;display:table;margin:0;max-width:none}.nav-container{width:100%;padding:0 5%;margin:0}.navbar-brand{padding-left:0}footer{bottom:0;width:100%;margin:0 auto;position:absolute;border-top:2px solid #DBDBDB;padding-top:10px}#adv_params_btn,#input_btn{display:block;margin-left:auto;margin-right:auto}.alert-danger{background-color:#f2dede}.alert-danger p{font-size:14px;line-height:20px;text-align:left;font-weight:400;color:#ff1c21}.alert-danger h3{color:#ff1c21}.fa-github,.navbar-brand a{color:#fff}.navbar-brand,.navbar-nav>li>a{line-height:27px}.navbar-brand a:hover{text-decoration:none}.navbar-nav>li>a.nav_github_icon{padding-top:0;padding-bottom:0}.fa-github{padding-top:18px;padding-bottom:18px}h1 .small{color:#2C3E50}.table,.table .danger,.table .info,.table .success,.table .warning,table .danger,table .info,table .success,table .warning{color:#333}.input_seq-label{font-size:26px}#dna_example,#protein_example{cursor:pointer}#adv_params_btn{margin-top:5px}#input_btn{margin-top:20px}.show_examples_text{font-size:17px;text-align:center}.control-label{font-size:1.25em;font-weight:400}.checkbox label,.help-block,.radio label,label{font-size:.9em;font-weight:inherit}.checkbox.inline.no_indent+.checkbox.inline.no_indent{margin-left:0;margin-right:10px}.checkbox.inline.no_indent:last-child{margin-right:0}label.checkbox-inline.no_indent,label.radio-inline.no_indent{margin-left:0;margin-right:10px}#results_header{margin-top:0;margin-bottom:30px}.alert-info,.explanation_alert{margin-bottom:0}#results_link_btn{margin-top:0;margin-right:-15px}.table thead tr{border-bottom:3px solid #DDD}.table td{font-size:13px!important;border-color:#ddd!important;vertical-align:middle!important;background-clip:padding-box;text-align:left}.table-bordered{border:none}.danger{background-color:#f2dede!important}.danger:hover{background-color:#f2cbcb!important}.success{background-color:#dff0d8!important}.success:hover{background-color:#cce4c8!important}.warning{background-color:#fcf8e3!important}.alert-info{background-color:#d9edf7;border-color:#bce8f1;border-style:solid;border-width:1px;box-sizing:border-box;color:#31708f;display:block;padding:15px}.explanation_alert p{font-size:14px;line-height:20px;text-align:left;font-weight:400}#toggle,.expanded-child{text-align:center}.plot_btn{color:#333;background-color:#fff;border-color:#ccc}.plot_btn:hover{color:#333;background-color:#ebebeb;border-color:#adadad}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:none}.table-bordered>tbody>tr{border-bottom:2px solid #DDD}.error_header{margin-top:10px}.table-responsive{overflow-x:auto}.table th,.table thead td{background-color:#E8E8E8;white-space:nowrap}tr{height:39px}.expanded-child{display:block}.tablesorter-default .header,.tablesorter-default .tablesorter-header{background-image:url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);background-position:center right;background-repeat:no-repeat;cursor:pointer;padding:4px 20px 4px 4px}.tablesorter-default thead .headerSortUp,.tablesorter-default thead .tablesorter-headerAsc,.tablesorter-default thead .tablesorter-headerSortUp{background-image:url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);border-bottom:#000 3px solid!important}.tablesorter-default thead .headerSortDown,.tablesorter-default thead .tablesorter-headerDesc,.tablesorter-default thead .tablesorter-headerSortDown{background-image:url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);border-bottom:#000 3px solid!important}.tablesorter-default thead .sorter-false{background-image:none;cursor:default;padding:4px}.tablesorter-default .tablesorter-processing{background-position:center center!important;background-repeat:no-repeat!important;background-image:url(data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=)!important}.table tbody td.danger,.table tbody td.success,.table tbody td.warning{padding-left:30px!important;position:relative}.table tbody td.danger:before,.table tbody td.success:before,.table tbody td.warning:before{font-family:FontAwesome;position:absolute;margin-left:-25px;font-size:1.5em;margin-top:-.75em;top:50%}.table tbody td.success:before{content:"\f058";color:#1AA882}.table tbody td.danger:before{content:"\f057";color:#FC585A}.table tbody td.warning:before{content:"\f06a";color:#FCB83F}.table tbody td.danger,.table tbody td.success{cursor:pointer!important}.tooltip>.tooltip-inner{background-color:#fff;color:#000;border:1px solid #CCC;max-width:275px}.tooltip.top>.tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #CCC}.axis line,.axis path{fill:none;stroke:#000;shape-rendering:crispEdges}.dot{opacity:.7}.line1{fill:green;stroke-width:1.5px;opacity:.5}svg:not(:root){overflow:visible}svg{margin:15px}.ratings{position:relative;vertical-align:middle;display:inline-block;color:#b1b1b1;overflow:hidden}.full-stars{position:absolute;left:0;top:0;white-space:nowrap;overflow:hidden;color:#fde16d}.empty-stars:before,.full-stars:before{font-family:FontAwesome;content:"\f005\f005\f005\f005\f005";font-size:14pt}.empty-stars:before{-webkit-text-stroke:1px #848484}.full-stars:before{-webkit-text-stroke:1px orange}.menu_icon{padding-left:10px;font-weight:700}.tooltip-inner{white-space:pre-wrap;min-width:100px}#report{text-align:left}@media (min-width:768px){#adv_params_btn{float:left!important;margin-top:5px}#input_btn{float:right!important;margin-top:-43px}.show_examples_text{text-align:left}.container{width:90%}}@-moz-document url-prefix(){.full-stars{color:#ECBE24}}<!--[ifIE]>.full-stars{color:#ECBE24}
15
- <![endif]-->
@@ -1,53 +0,0 @@
1
- /*! jQuery v2.1.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */
2
- !function (a, b) { "object" == typeof module && "object" == typeof module.exports ? module.exports = a.document ? b(a, !0) : function (a) { if (!a.document) throw new Error("jQuery requires a window with a document"); return b(a) } : b(a) }("undefined" != typeof window ? window : this, function (a, b) {
3
- var c = [], d = c.slice, e = c.concat, f = c.push, g = c.indexOf, h = {}, i = h.toString, j = h.hasOwnProperty, k = {}, l = a.document, m = "2.1.1", n = function (a, b) { return new n.fn.init(a, b) }, o = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, p = /^-ms-/, q = /-([\da-z])/gi, r = function (a, b) { return b.toUpperCase() }; n.fn = n.prototype = { jquery: m, constructor: n, selector: "", length: 0, toArray: function () { return d.call(this) }, get: function (a) { return null != a ? 0 > a ? this[a + this.length] : this[a] : d.call(this) }, pushStack: function (a) { var b = n.merge(this.constructor(), a); return b.prevObject = this, b.context = this.context, b }, each: function (a, b) { return n.each(this, a, b) }, map: function (a) { return this.pushStack(n.map(this, function (b, c) { return a.call(b, c, b) })) }, slice: function () { return this.pushStack(d.apply(this, arguments)) }, first: function () { return this.eq(0) }, last: function () { return this.eq(-1) }, eq: function (a) { var b = this.length, c = +a + (0 > a ? b : 0); return this.pushStack(c >= 0 && b > c ? [this[c]] : []) }, end: function () { return this.prevObject || this.constructor(null) }, push: f, sort: c.sort, splice: c.splice }, n.extend = n.fn.extend = function () { var a, b, c, d, e, f, g = arguments[0] || {}, h = 1, i = arguments.length, j = !1; for ("boolean" == typeof g && (j = g, g = arguments[h] || {}, h++), "object" == typeof g || n.isFunction(g) || (g = {}), h === i && (g = this, h--); i > h; h++)if (null != (a = arguments[h])) for (b in a) c = g[b], d = a[b], g !== d && (j && d && (n.isPlainObject(d) || (e = n.isArray(d))) ? (e ? (e = !1, f = c && n.isArray(c) ? c : []) : f = c && n.isPlainObject(c) ? c : {}, g[b] = n.extend(j, f, d)) : void 0 !== d && (g[b] = d)); return g }, n.extend({ expando: "jQuery" + (m + Math.random()).replace(/\D/g, ""), isReady: !0, error: function (a) { throw new Error(a) }, noop: function () { }, isFunction: function (a) { return "function" === n.type(a) }, isArray: Array.isArray, isWindow: function (a) { return null != a && a === a.window }, isNumeric: function (a) { return !n.isArray(a) && a - parseFloat(a) >= 0 }, isPlainObject: function (a) { return "object" !== n.type(a) || a.nodeType || n.isWindow(a) ? !1 : a.constructor && !j.call(a.constructor.prototype, "isPrototypeOf") ? !1 : !0 }, isEmptyObject: function (a) { var b; for (b in a) return !1; return !0 }, type: function (a) { return null == a ? a + "" : "object" == typeof a || "function" == typeof a ? h[i.call(a)] || "object" : typeof a }, globalEval: function (a) { var b, c = eval; a = n.trim(a), a && (1 === a.indexOf("use strict") ? (b = l.createElement("script"), b.text = a, l.head.appendChild(b).parentNode.removeChild(b)) : c(a)) }, camelCase: function (a) { return a.replace(p, "ms-").replace(q, r) }, nodeName: function (a, b) { return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase() }, each: function (a, b, c) { var d, e = 0, f = a.length, g = s(a); if (c) { if (g) { for (; f > e; e++)if (d = b.apply(a[e], c), d === !1) break } else for (e in a) if (d = b.apply(a[e], c), d === !1) break } else if (g) { for (; f > e; e++)if (d = b.call(a[e], e, a[e]), d === !1) break } else for (e in a) if (d = b.call(a[e], e, a[e]), d === !1) break; return a }, trim: function (a) { return null == a ? "" : (a + "").replace(o, "") }, makeArray: function (a, b) { var c = b || []; return null != a && (s(Object(a)) ? n.merge(c, "string" == typeof a ? [a] : a) : f.call(c, a)), c }, inArray: function (a, b, c) { return null == b ? -1 : g.call(b, a, c) }, merge: function (a, b) { for (var c = +b.length, d = 0, e = a.length; c > d; d++)a[e++] = b[d]; return a.length = e, a }, grep: function (a, b, c) { for (var d, e = [], f = 0, g = a.length, h = !c; g > f; f++)d = !b(a[f], f), d !== h && e.push(a[f]); return e }, map: function (a, b, c) { var d, f = 0, g = a.length, h = s(a), i = []; if (h) for (; g > f; f++)d = b(a[f], f, c), null != d && i.push(d); else for (f in a) d = b(a[f], f, c), null != d && i.push(d); return e.apply([], i) }, guid: 1, proxy: function (a, b) { var c, e, f; return "string" == typeof b && (c = a[b], b = a, a = c), n.isFunction(a) ? (e = d.call(arguments, 2), f = function () { return a.apply(b || this, e.concat(d.call(arguments))) }, f.guid = a.guid = a.guid || n.guid++ , f) : void 0 }, now: Date.now, support: k }), n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (a, b) { h["[object " + b + "]"] = b.toLowerCase() }); function s(a) { var b = a.length, c = n.type(a); return "function" === c || n.isWindow(a) ? !1 : 1 === a.nodeType && b ? !0 : "array" === c || 0 === b || "number" == typeof b && b > 0 && b - 1 in a } var t = function (a) { var b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u = "sizzle" + -new Date, v = a.document, w = 0, x = 0, y = gb(), z = gb(), A = gb(), B = function (a, b) { return a === b && (l = !0), 0 }, C = "undefined", D = 1 << 31, E = {}.hasOwnProperty, F = [], G = F.pop, H = F.push, I = F.push, J = F.slice, K = F.indexOf || function (a) { for (var b = 0, c = this.length; c > b; b++)if (this[b] === a) return b; return -1 }, L = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", M = "[\\x20\\t\\r\\n\\f]", N = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", O = N.replace("w", "w#"), P = "\\[" + M + "*(" + N + ")(?:" + M + "*([*^$|!~]?=)" + M + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + O + "))|)" + M + "*\\]", Q = ":(" + N + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + P + ")*)|.*)\\)|)", R = new RegExp("^" + M + "+|((?:^|[^\\\\])(?:\\\\.)*)" + M + "+$", "g"), S = new RegExp("^" + M + "*," + M + "*"), T = new RegExp("^" + M + "*([>+~]|" + M + ")" + M + "*"), U = new RegExp("=" + M + "*([^\\]'\"]*?)" + M + "*\\]", "g"), V = new RegExp(Q), W = new RegExp("^" + O + "$"), X = { ID: new RegExp("^#(" + N + ")"), CLASS: new RegExp("^\\.(" + N + ")"), TAG: new RegExp("^(" + N.replace("w", "w*") + ")"), ATTR: new RegExp("^" + P), PSEUDO: new RegExp("^" + Q), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + M + "*(even|odd|(([+-]|)(\\d*)n|)" + M + "*(?:([+-]|)" + M + "*(\\d+)|))" + M + "*\\)|)", "i"), bool: new RegExp("^(?:" + L + ")$", "i"), needsContext: new RegExp("^" + M + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + M + "*((?:-\\d)?\\d*)" + M + "*\\)|)(?=[^-]|$)", "i") }, Y = /^(?:input|select|textarea|button)$/i, Z = /^h\d$/i, $ = /^[^{]+\{\s*\[native \w/, _ = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, ab = /[+~]/, bb = /'|\\/g, cb = new RegExp("\\\\([\\da-f]{1,6}" + M + "?|(" + M + ")|.)", "ig"), db = function (a, b, c) { var d = "0x" + b - 65536; return d !== d || c ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode(d >> 10 | 55296, 1023 & d | 56320) }; try { I.apply(F = J.call(v.childNodes), v.childNodes), F[v.childNodes.length].nodeType } catch (eb) { I = { apply: F.length ? function (a, b) { H.apply(a, J.call(b)) } : function (a, b) { var c = a.length, d = 0; while (a[c++] = b[d++]); a.length = c - 1 } } } function fb(a, b, d, e) { var f, h, j, k, l, o, r, s, w, x; if ((b ? b.ownerDocument || b : v) !== n && m(b), b = b || n, d = d || [], !a || "string" != typeof a) return d; if (1 !== (k = b.nodeType) && 9 !== k) return []; if (p && !e) { if (f = _.exec(a)) if (j = f[1]) { if (9 === k) { if (h = b.getElementById(j), !h || !h.parentNode) return d; if (h.id === j) return d.push(h), d } else if (b.ownerDocument && (h = b.ownerDocument.getElementById(j)) && t(b, h) && h.id === j) return d.push(h), d } else { if (f[2]) return I.apply(d, b.getElementsByTagName(a)), d; if ((j = f[3]) && c.getElementsByClassName && b.getElementsByClassName) return I.apply(d, b.getElementsByClassName(j)), d } if (c.qsa && (!q || !q.test(a))) { if (s = r = u, w = b, x = 9 === k && a, 1 === k && "object" !== b.nodeName.toLowerCase()) { o = g(a), (r = b.getAttribute("id")) ? s = r.replace(bb, "\\$&") : b.setAttribute("id", s), s = "[id='" + s + "'] ", l = o.length; while (l--) o[l] = s + qb(o[l]); w = ab.test(a) && ob(b.parentNode) || b, x = o.join(",") } if (x) try { return I.apply(d, w.querySelectorAll(x)), d } catch (y) { } finally { r || b.removeAttribute("id") } } } return i(a.replace(R, "$1"), b, d, e) } function gb() { var a = []; function b(c, e) { return a.push(c + " ") > d.cacheLength && delete b[a.shift()], b[c + " "] = e } return b } function hb(a) { return a[u] = !0, a } function ib(a) { var b = n.createElement("div"); try { return !!a(b) } catch (c) { return !1 } finally { b.parentNode && b.parentNode.removeChild(b), b = null } } function jb(a, b) { var c = a.split("|"), e = a.length; while (e--) d.attrHandle[c[e]] = b } function kb(a, b) { var c = b && a, d = c && 1 === a.nodeType && 1 === b.nodeType && (~b.sourceIndex || D) - (~a.sourceIndex || D); if (d) return d; if (c) while (c = c.nextSibling) if (c === b) return -1; return a ? 1 : -1 } function lb(a) { return function (b) { var c = b.nodeName.toLowerCase(); return "input" === c && b.type === a } } function mb(a) { return function (b) { var c = b.nodeName.toLowerCase(); return ("input" === c || "button" === c) && b.type === a } } function nb(a) { return hb(function (b) { return b = +b, hb(function (c, d) { var e, f = a([], c.length, b), g = f.length; while (g--) c[e = f[g]] && (c[e] = !(d[e] = c[e])) }) }) } function ob(a) { return a && typeof a.getElementsByTagName !== C && a } c = fb.support = {}, f = fb.isXML = function (a) { var b = a && (a.ownerDocument || a).documentElement; return b ? "HTML" !== b.nodeName : !1 }, m = fb.setDocument = function (a) { var b, e = a ? a.ownerDocument || a : v, g = e.defaultView; return e !== n && 9 === e.nodeType && e.documentElement ? (n = e, o = e.documentElement, p = !f(e), g && g !== g.top && (g.addEventListener ? g.addEventListener("unload", function () { m() }, !1) : g.attachEvent && g.attachEvent("onunload", function () { m() })), c.attributes = ib(function (a) { return a.className = "i", !a.getAttribute("className") }), c.getElementsByTagName = ib(function (a) { return a.appendChild(e.createComment("")), !a.getElementsByTagName("*").length }), c.getElementsByClassName = $.test(e.getElementsByClassName) && ib(function (a) { return a.innerHTML = "<div class='a'></div><div class='a i'></div>", a.firstChild.className = "i", 2 === a.getElementsByClassName("i").length }), c.getById = ib(function (a) { return o.appendChild(a).id = u, !e.getElementsByName || !e.getElementsByName(u).length }), c.getById ? (d.find.ID = function (a, b) { if (typeof b.getElementById !== C && p) { var c = b.getElementById(a); return c && c.parentNode ? [c] : [] } }, d.filter.ID = function (a) { var b = a.replace(cb, db); return function (a) { return a.getAttribute("id") === b } }) : (delete d.find.ID, d.filter.ID = function (a) { var b = a.replace(cb, db); return function (a) { var c = typeof a.getAttributeNode !== C && a.getAttributeNode("id"); return c && c.value === b } }), d.find.TAG = c.getElementsByTagName ? function (a, b) { return typeof b.getElementsByTagName !== C ? b.getElementsByTagName(a) : void 0 } : function (a, b) { var c, d = [], e = 0, f = b.getElementsByTagName(a); if ("*" === a) { while (c = f[e++]) 1 === c.nodeType && d.push(c); return d } return f }, d.find.CLASS = c.getElementsByClassName && function (a, b) { return typeof b.getElementsByClassName !== C && p ? b.getElementsByClassName(a) : void 0 }, r = [], q = [], (c.qsa = $.test(e.querySelectorAll)) && (ib(function (a) { a.innerHTML = "<select msallowclip=''><option selected=''></option></select>", a.querySelectorAll("[msallowclip^='']").length && q.push("[*^$]=" + M + "*(?:''|\"\")"), a.querySelectorAll("[selected]").length || q.push("\\[" + M + "*(?:value|" + L + ")"), a.querySelectorAll(":checked").length || q.push(":checked") }), ib(function (a) { var b = e.createElement("input"); b.setAttribute("type", "hidden"), a.appendChild(b).setAttribute("name", "D"), a.querySelectorAll("[name=d]").length && q.push("name" + M + "*[*^$|!~]?="), a.querySelectorAll(":enabled").length || q.push(":enabled", ":disabled"), a.querySelectorAll("*,:x"), q.push(",.*:") })), (c.matchesSelector = $.test(s = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.oMatchesSelector || o.msMatchesSelector)) && ib(function (a) { c.disconnectedMatch = s.call(a, "div"), s.call(a, "[s!='']:x"), r.push("!=", Q) }), q = q.length && new RegExp(q.join("|")), r = r.length && new RegExp(r.join("|")), b = $.test(o.compareDocumentPosition), t = b || $.test(o.contains) ? function (a, b) { var c = 9 === a.nodeType ? a.documentElement : a, d = b && b.parentNode; return a === d || !(!d || 1 !== d.nodeType || !(c.contains ? c.contains(d) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d))) } : function (a, b) { if (b) while (b = b.parentNode) if (b === a) return !0; return !1 }, B = b ? function (a, b) { if (a === b) return l = !0, 0; var d = !a.compareDocumentPosition - !b.compareDocumentPosition; return d ? d : (d = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1, 1 & d || !c.sortDetached && b.compareDocumentPosition(a) === d ? a === e || a.ownerDocument === v && t(v, a) ? -1 : b === e || b.ownerDocument === v && t(v, b) ? 1 : k ? K.call(k, a) - K.call(k, b) : 0 : 4 & d ? -1 : 1) } : function (a, b) { if (a === b) return l = !0, 0; var c, d = 0, f = a.parentNode, g = b.parentNode, h = [a], i = [b]; if (!f || !g) return a === e ? -1 : b === e ? 1 : f ? -1 : g ? 1 : k ? K.call(k, a) - K.call(k, b) : 0; if (f === g) return kb(a, b); c = a; while (c = c.parentNode) h.unshift(c); c = b; while (c = c.parentNode) i.unshift(c); while (h[d] === i[d]) d++; return d ? kb(h[d], i[d]) : h[d] === v ? -1 : i[d] === v ? 1 : 0 }, e) : n }, fb.matches = function (a, b) { return fb(a, null, null, b) }, fb.matchesSelector = function (a, b) { if ((a.ownerDocument || a) !== n && m(a), b = b.replace(U, "='$1']"), !(!c.matchesSelector || !p || r && r.test(b) || q && q.test(b))) try { var d = s.call(a, b); if (d || c.disconnectedMatch || a.document && 11 !== a.document.nodeType) return d } catch (e) { } return fb(b, n, null, [a]).length > 0 }, fb.contains = function (a, b) { return (a.ownerDocument || a) !== n && m(a), t(a, b) }, fb.attr = function (a, b) { (a.ownerDocument || a) !== n && m(a); var e = d.attrHandle[b.toLowerCase()], f = e && E.call(d.attrHandle, b.toLowerCase()) ? e(a, b, !p) : void 0; return void 0 !== f ? f : c.attributes || !p ? a.getAttribute(b) : (f = a.getAttributeNode(b)) && f.specified ? f.value : null }, fb.error = function (a) { throw new Error("Syntax error, unrecognized expression: " + a) }, fb.uniqueSort = function (a) { var b, d = [], e = 0, f = 0; if (l = !c.detectDuplicates, k = !c.sortStable && a.slice(0), a.sort(B), l) { while (b = a[f++]) b === a[f] && (e = d.push(f)); while (e--) a.splice(d[e], 1) } return k = null, a }, e = fb.getText = function (a) { var b, c = "", d = 0, f = a.nodeType; if (f) { if (1 === f || 9 === f || 11 === f) { if ("string" == typeof a.textContent) return a.textContent; for (a = a.firstChild; a; a = a.nextSibling)c += e(a) } else if (3 === f || 4 === f) return a.nodeValue } else while (b = a[d++]) c += e(b); return c }, d = fb.selectors = { cacheLength: 50, createPseudo: hb, match: X, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, preFilter: { ATTR: function (a) { return a[1] = a[1].replace(cb, db), a[3] = (a[3] || a[4] || a[5] || "").replace(cb, db), "~=" === a[2] && (a[3] = " " + a[3] + " "), a.slice(0, 4) }, CHILD: function (a) { return a[1] = a[1].toLowerCase(), "nth" === a[1].slice(0, 3) ? (a[3] || fb.error(a[0]), a[4] = +(a[4] ? a[5] + (a[6] || 1) : 2 * ("even" === a[3] || "odd" === a[3])), a[5] = +(a[7] + a[8] || "odd" === a[3])) : a[3] && fb.error(a[0]), a }, PSEUDO: function (a) { var b, c = !a[6] && a[2]; return X.CHILD.test(a[0]) ? null : (a[3] ? a[2] = a[4] || a[5] || "" : c && V.test(c) && (b = g(c, !0)) && (b = c.indexOf(")", c.length - b) - c.length) && (a[0] = a[0].slice(0, b), a[2] = c.slice(0, b)), a.slice(0, 3)) } }, filter: { TAG: function (a) { var b = a.replace(cb, db).toLowerCase(); return "*" === a ? function () { return !0 } : function (a) { return a.nodeName && a.nodeName.toLowerCase() === b } }, CLASS: function (a) { var b = y[a + " "]; return b || (b = new RegExp("(^|" + M + ")" + a + "(" + M + "|$)")) && y(a, function (a) { return b.test("string" == typeof a.className && a.className || typeof a.getAttribute !== C && a.getAttribute("class") || "") }) }, ATTR: function (a, b, c) { return function (d) { var e = fb.attr(d, a); return null == e ? "!=" === b : b ? (e += "", "=" === b ? e === c : "!=" === b ? e !== c : "^=" === b ? c && 0 === e.indexOf(c) : "*=" === b ? c && e.indexOf(c) > -1 : "$=" === b ? c && e.slice(-c.length) === c : "~=" === b ? (" " + e + " ").indexOf(c) > -1 : "|=" === b ? e === c || e.slice(0, c.length + 1) === c + "-" : !1) : !0 } }, CHILD: function (a, b, c, d, e) { var f = "nth" !== a.slice(0, 3), g = "last" !== a.slice(-4), h = "of-type" === b; return 1 === d && 0 === e ? function (a) { return !!a.parentNode } : function (b, c, i) { var j, k, l, m, n, o, p = f !== g ? "nextSibling" : "previousSibling", q = b.parentNode, r = h && b.nodeName.toLowerCase(), s = !i && !h; if (q) { if (f) { while (p) { l = b; while (l = l[p]) if (h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) return !1; o = p = "only" === a && !o && "nextSibling" } return !0 } if (o = [g ? q.firstChild : q.lastChild], g && s) { k = q[u] || (q[u] = {}), j = k[a] || [], n = j[0] === w && j[1], m = j[0] === w && j[2], l = n && q.childNodes[n]; while (l = ++n && l && l[p] || (m = n = 0) || o.pop()) if (1 === l.nodeType && ++m && l === b) { k[a] = [w, n, m]; break } } else if (s && (j = (b[u] || (b[u] = {}))[a]) && j[0] === w) m = j[1]; else while (l = ++n && l && l[p] || (m = n = 0) || o.pop()) if ((h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) && ++m && (s && ((l[u] || (l[u] = {}))[a] = [w, m]), l === b)) break; return m -= e, m === d || m % d === 0 && m / d >= 0 } } }, PSEUDO: function (a, b) { var c, e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || fb.error("unsupported pseudo: " + a); return e[u] ? e(b) : e.length > 1 ? (c = [a, a, "", b], d.setFilters.hasOwnProperty(a.toLowerCase()) ? hb(function (a, c) { var d, f = e(a, b), g = f.length; while (g--) d = K.call(a, f[g]), a[d] = !(c[d] = f[g]) }) : function (a) { return e(a, 0, c) }) : e } }, pseudos: { not: hb(function (a) { var b = [], c = [], d = h(a.replace(R, "$1")); return d[u] ? hb(function (a, b, c, e) { var f, g = d(a, null, e, []), h = a.length; while (h--) (f = g[h]) && (a[h] = !(b[h] = f)) }) : function (a, e, f) { return b[0] = a, d(b, null, f, c), !c.pop() } }), has: hb(function (a) { return function (b) { return fb(a, b).length > 0 } }), contains: hb(function (a) { return function (b) { return (b.textContent || b.innerText || e(b)).indexOf(a) > -1 } }), lang: hb(function (a) { return W.test(a || "") || fb.error("unsupported lang: " + a), a = a.replace(cb, db).toLowerCase(), function (b) { var c; do if (c = p ? b.lang : b.getAttribute("xml:lang") || b.getAttribute("lang")) return c = c.toLowerCase(), c === a || 0 === c.indexOf(a + "-"); while ((b = b.parentNode) && 1 === b.nodeType); return !1 } }), target: function (b) { var c = a.location && a.location.hash; return c && c.slice(1) === b.id }, root: function (a) { return a === o }, focus: function (a) { return a === n.activeElement && (!n.hasFocus || n.hasFocus()) && !!(a.type || a.href || ~a.tabIndex) }, enabled: function (a) { return a.disabled === !1 }, disabled: function (a) { return a.disabled === !0 }, checked: function (a) { var b = a.nodeName.toLowerCase(); return "input" === b && !!a.checked || "option" === b && !!a.selected }, selected: function (a) { return a.parentNode && a.parentNode.selectedIndex, a.selected === !0 }, empty: function (a) { for (a = a.firstChild; a; a = a.nextSibling)if (a.nodeType < 6) return !1; return !0 }, parent: function (a) { return !d.pseudos.empty(a) }, header: function (a) { return Z.test(a.nodeName) }, input: function (a) { return Y.test(a.nodeName) }, button: function (a) { var b = a.nodeName.toLowerCase(); return "input" === b && "button" === a.type || "button" === b }, text: function (a) { var b; return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase()) }, first: nb(function () { return [0] }), last: nb(function (a, b) { return [b - 1] }), eq: nb(function (a, b, c) { return [0 > c ? c + b : c] }), even: nb(function (a, b) { for (var c = 0; b > c; c += 2)a.push(c); return a }), odd: nb(function (a, b) { for (var c = 1; b > c; c += 2)a.push(c); return a }), lt: nb(function (a, b, c) { for (var d = 0 > c ? c + b : c; --d >= 0;)a.push(d); return a }), gt: nb(function (a, b, c) { for (var d = 0 > c ? c + b : c; ++d < b;)a.push(d); return a }) } }, d.pseudos.nth = d.pseudos.eq; for (b in { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) d.pseudos[b] = lb(b); for (b in { submit: !0, reset: !0 }) d.pseudos[b] = mb(b); function pb() { } pb.prototype = d.filters = d.pseudos, d.setFilters = new pb, g = fb.tokenize = function (a, b) { var c, e, f, g, h, i, j, k = z[a + " "]; if (k) return b ? 0 : k.slice(0); h = a, i = [], j = d.preFilter; while (h) { (!c || (e = S.exec(h))) && (e && (h = h.slice(e[0].length) || h), i.push(f = [])), c = !1, (e = T.exec(h)) && (c = e.shift(), f.push({ value: c, type: e[0].replace(R, " ") }), h = h.slice(c.length)); for (g in d.filter) !(e = X[g].exec(h)) || j[g] && !(e = j[g](e)) || (c = e.shift(), f.push({ value: c, type: g, matches: e }), h = h.slice(c.length)); if (!c) break } return b ? h.length : h ? fb.error(a) : z(a, i).slice(0) }; function qb(a) { for (var b = 0, c = a.length, d = ""; c > b; b++)d += a[b].value; return d } function rb(a, b, c) { var d = b.dir, e = c && "parentNode" === d, f = x++; return b.first ? function (b, c, f) { while (b = b[d]) if (1 === b.nodeType || e) return a(b, c, f) } : function (b, c, g) { var h, i, j = [w, f]; if (g) { while (b = b[d]) if ((1 === b.nodeType || e) && a(b, c, g)) return !0 } else while (b = b[d]) if (1 === b.nodeType || e) { if (i = b[u] || (b[u] = {}), (h = i[d]) && h[0] === w && h[1] === f) return j[2] = h[2]; if (i[d] = j, j[2] = a(b, c, g)) return !0 } } } function sb(a) { return a.length > 1 ? function (b, c, d) { var e = a.length; while (e--) if (!a[e](b, c, d)) return !1; return !0 } : a[0] } function tb(a, b, c) { for (var d = 0, e = b.length; e > d; d++)fb(a, b[d], c); return c } function ub(a, b, c, d, e) { for (var f, g = [], h = 0, i = a.length, j = null != b; i > h; h++)(f = a[h]) && (!c || c(f, d, e)) && (g.push(f), j && b.push(h)); return g } function vb(a, b, c, d, e, f) { return d && !d[u] && (d = vb(d)), e && !e[u] && (e = vb(e, f)), hb(function (f, g, h, i) { var j, k, l, m = [], n = [], o = g.length, p = f || tb(b || "*", h.nodeType ? [h] : h, []), q = !a || !f && b ? p : ub(p, m, a, h, i), r = c ? e || (f ? a : o || d) ? [] : g : q; if (c && c(q, r, h, i), d) { j = ub(r, n), d(j, [], h, i), k = j.length; while (k--) (l = j[k]) && (r[n[k]] = !(q[n[k]] = l)) } if (f) { if (e || a) { if (e) { j = [], k = r.length; while (k--) (l = r[k]) && j.push(q[k] = l); e(null, r = [], j, i) } k = r.length; while (k--) (l = r[k]) && (j = e ? K.call(f, l) : m[k]) > -1 && (f[j] = !(g[j] = l)) } } else r = ub(r === g ? r.splice(o, r.length) : r), e ? e(null, g, r, i) : I.apply(g, r) }) } function wb(a) { for (var b, c, e, f = a.length, g = d.relative[a[0].type], h = g || d.relative[" "], i = g ? 1 : 0, k = rb(function (a) { return a === b }, h, !0), l = rb(function (a) { return K.call(b, a) > -1 }, h, !0), m = [function (a, c, d) { return !g && (d || c !== j) || ((b = c).nodeType ? k(a, c, d) : l(a, c, d)) }]; f > i; i++)if (c = d.relative[a[i].type]) m = [rb(sb(m), c)]; else { if (c = d.filter[a[i].type].apply(null, a[i].matches), c[u]) { for (e = ++i; f > e; e++)if (d.relative[a[e].type]) break; return vb(i > 1 && sb(m), i > 1 && qb(a.slice(0, i - 1).concat({ value: " " === a[i - 2].type ? "*" : "" })).replace(R, "$1"), c, e > i && wb(a.slice(i, e)), f > e && wb(a = a.slice(e)), f > e && qb(a)) } m.push(c) } return sb(m) } function xb(a, b) { var c = b.length > 0, e = a.length > 0, f = function (f, g, h, i, k) { var l, m, o, p = 0, q = "0", r = f && [], s = [], t = j, u = f || e && d.find.TAG("*", k), v = w += null == t ? 1 : Math.random() || .1, x = u.length; for (k && (j = g !== n && g); q !== x && null != (l = u[q]); q++) { if (e && l) { m = 0; while (o = a[m++]) if (o(l, g, h)) { i.push(l); break } k && (w = v) } c && ((l = !o && l) && p-- , f && r.push(l)) } if (p += q, c && q !== p) { m = 0; while (o = b[m++]) o(r, s, g, h); if (f) { if (p > 0) while (q--) r[q] || s[q] || (s[q] = G.call(i)); s = ub(s) } I.apply(i, s), k && !f && s.length > 0 && p + b.length > 1 && fb.uniqueSort(i) } return k && (w = v, j = t), r }; return c ? hb(f) : f } return h = fb.compile = function (a, b) { var c, d = [], e = [], f = A[a + " "]; if (!f) { b || (b = g(a)), c = b.length; while (c--) f = wb(b[c]), f[u] ? d.push(f) : e.push(f); f = A(a, xb(e, d)), f.selector = a } return f }, i = fb.select = function (a, b, e, f) { var i, j, k, l, m, n = "function" == typeof a && a, o = !f && g(a = n.selector || a); if (e = e || [], 1 === o.length) { if (j = o[0] = o[0].slice(0), j.length > 2 && "ID" === (k = j[0]).type && c.getById && 9 === b.nodeType && p && d.relative[j[1].type]) { if (b = (d.find.ID(k.matches[0].replace(cb, db), b) || [])[0], !b) return e; n && (b = b.parentNode), a = a.slice(j.shift().value.length) } i = X.needsContext.test(a) ? 0 : j.length; while (i--) { if (k = j[i], d.relative[l = k.type]) break; if ((m = d.find[l]) && (f = m(k.matches[0].replace(cb, db), ab.test(j[0].type) && ob(b.parentNode) || b))) { if (j.splice(i, 1), a = f.length && qb(j), !a) return I.apply(e, f), e; break } } } return (n || h(a, o))(f, b, !p, e, ab.test(a) && ob(b.parentNode) || b), e }, c.sortStable = u.split("").sort(B).join("") === u, c.detectDuplicates = !!l, m(), c.sortDetached = ib(function (a) { return 1 & a.compareDocumentPosition(n.createElement("div")) }), ib(function (a) { return a.innerHTML = "<a href='#'></a>", "#" === a.firstChild.getAttribute("href") }) || jb("type|href|height|width", function (a, b, c) { return c ? void 0 : a.getAttribute(b, "type" === b.toLowerCase() ? 1 : 2) }), c.attributes && ib(function (a) { return a.innerHTML = "<input/>", a.firstChild.setAttribute("value", ""), "" === a.firstChild.getAttribute("value") }) || jb("value", function (a, b, c) { return c || "input" !== a.nodeName.toLowerCase() ? void 0 : a.defaultValue }), ib(function (a) { return null == a.getAttribute("disabled") }) || jb(L, function (a, b, c) { var d; return c ? void 0 : a[b] === !0 ? b.toLowerCase() : (d = a.getAttributeNode(b)) && d.specified ? d.value : null }), fb }(a); n.find = t, n.expr = t.selectors, n.expr[":"] = n.expr.pseudos, n.unique = t.uniqueSort, n.text = t.getText, n.isXMLDoc = t.isXML, n.contains = t.contains; var u = n.expr.match.needsContext, v = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, w = /^.[^:#\[\.,]*$/; function x(a, b, c) { if (n.isFunction(b)) return n.grep(a, function (a, d) { return !!b.call(a, d, a) !== c }); if (b.nodeType) return n.grep(a, function (a) { return a === b !== c }); if ("string" == typeof b) { if (w.test(b)) return n.filter(b, a, c); b = n.filter(b, a) } return n.grep(a, function (a) { return g.call(b, a) >= 0 !== c }) } n.filter = function (a, b, c) { var d = b[0]; return c && (a = ":not(" + a + ")"), 1 === b.length && 1 === d.nodeType ? n.find.matchesSelector(d, a) ? [d] : [] : n.find.matches(a, n.grep(b, function (a) { return 1 === a.nodeType })) }, n.fn.extend({ find: function (a) { var b, c = this.length, d = [], e = this; if ("string" != typeof a) return this.pushStack(n(a).filter(function () { for (b = 0; c > b; b++)if (n.contains(e[b], this)) return !0 })); for (b = 0; c > b; b++)n.find(a, e[b], d); return d = this.pushStack(c > 1 ? n.unique(d) : d), d.selector = this.selector ? this.selector + " " + a : a, d }, filter: function (a) { return this.pushStack(x(this, a || [], !1)) }, not: function (a) { return this.pushStack(x(this, a || [], !0)) }, is: function (a) { return !!x(this, "string" == typeof a && u.test(a) ? n(a) : a || [], !1).length } }); var y, z = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, A = n.fn.init = function (a, b) { var c, d; if (!a) return this; if ("string" == typeof a) { if (c = "<" === a[0] && ">" === a[a.length - 1] && a.length >= 3 ? [null, a, null] : z.exec(a), !c || !c[1] && b) return !b || b.jquery ? (b || y).find(a) : this.constructor(b).find(a); if (c[1]) { if (b = b instanceof n ? b[0] : b, n.merge(this, n.parseHTML(c[1], b && b.nodeType ? b.ownerDocument || b : l, !0)), v.test(c[1]) && n.isPlainObject(b)) for (c in b) n.isFunction(this[c]) ? this[c](b[c]) : this.attr(c, b[c]); return this } return d = l.getElementById(c[2]), d && d.parentNode && (this.length = 1, this[0] = d), this.context = l, this.selector = a, this } return a.nodeType ? (this.context = this[0] = a, this.length = 1, this) : n.isFunction(a) ? "undefined" != typeof y.ready ? y.ready(a) : a(n) : (void 0 !== a.selector && (this.selector = a.selector, this.context = a.context), n.makeArray(a, this)) }; A.prototype = n.fn, y = n(l); var B = /^(?:parents|prev(?:Until|All))/, C = { children: !0, contents: !0, next: !0, prev: !0 }; n.extend({ dir: function (a, b, c) { var d = [], e = void 0 !== c; while ((a = a[b]) && 9 !== a.nodeType) if (1 === a.nodeType) { if (e && n(a).is(c)) break; d.push(a) } return d }, sibling: function (a, b) { for (var c = []; a; a = a.nextSibling)1 === a.nodeType && a !== b && c.push(a); return c } }), n.fn.extend({ has: function (a) { var b = n(a, this), c = b.length; return this.filter(function () { for (var a = 0; c > a; a++)if (n.contains(this, b[a])) return !0 }) }, closest: function (a, b) { for (var c, d = 0, e = this.length, f = [], g = u.test(a) || "string" != typeof a ? n(a, b || this.context) : 0; e > d; d++)for (c = this[d]; c && c !== b; c = c.parentNode)if (c.nodeType < 11 && (g ? g.index(c) > -1 : 1 === c.nodeType && n.find.matchesSelector(c, a))) { f.push(c); break } return this.pushStack(f.length > 1 ? n.unique(f) : f) }, index: function (a) { return a ? "string" == typeof a ? g.call(n(a), this[0]) : g.call(this, a.jquery ? a[0] : a) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 }, add: function (a, b) { return this.pushStack(n.unique(n.merge(this.get(), n(a, b)))) }, addBack: function (a) { return this.add(null == a ? this.prevObject : this.prevObject.filter(a)) } }); function D(a, b) { while ((a = a[b]) && 1 !== a.nodeType); return a } n.each({ parent: function (a) { var b = a.parentNode; return b && 11 !== b.nodeType ? b : null }, parents: function (a) { return n.dir(a, "parentNode") }, parentsUntil: function (a, b, c) { return n.dir(a, "parentNode", c) }, next: function (a) { return D(a, "nextSibling") }, prev: function (a) { return D(a, "previousSibling") }, nextAll: function (a) { return n.dir(a, "nextSibling") }, prevAll: function (a) { return n.dir(a, "previousSibling") }, nextUntil: function (a, b, c) { return n.dir(a, "nextSibling", c) }, prevUntil: function (a, b, c) { return n.dir(a, "previousSibling", c) }, siblings: function (a) { return n.sibling((a.parentNode || {}).firstChild, a) }, children: function (a) { return n.sibling(a.firstChild) }, contents: function (a) { return a.contentDocument || n.merge([], a.childNodes) } }, function (a, b) { n.fn[a] = function (c, d) { var e = n.map(this, b, c); return "Until" !== a.slice(-5) && (d = c), d && "string" == typeof d && (e = n.filter(d, e)), this.length > 1 && (C[a] || n.unique(e), B.test(a) && e.reverse()), this.pushStack(e) } }); var E = /\S+/g, F = {}; function G(a) { var b = F[a] = {}; return n.each(a.match(E) || [], function (a, c) { b[c] = !0 }), b } n.Callbacks = function (a) { a = "string" == typeof a ? F[a] || G(a) : n.extend({}, a); var b, c, d, e, f, g, h = [], i = !a.once && [], j = function (l) { for (b = a.memory && l, c = !0, g = e || 0, e = 0, f = h.length, d = !0; h && f > g; g++)if (h[g].apply(l[0], l[1]) === !1 && a.stopOnFalse) { b = !1; break } d = !1, h && (i ? i.length && j(i.shift()) : b ? h = [] : k.disable()) }, k = { add: function () { if (h) { var c = h.length; !function g(b) { n.each(b, function (b, c) { var d = n.type(c); "function" === d ? a.unique && k.has(c) || h.push(c) : c && c.length && "string" !== d && g(c) }) }(arguments), d ? f = h.length : b && (e = c, j(b)) } return this }, remove: function () { return h && n.each(arguments, function (a, b) { var c; while ((c = n.inArray(b, h, c)) > -1) h.splice(c, 1), d && (f >= c && f-- , g >= c && g--) }), this }, has: function (a) { return a ? n.inArray(a, h) > -1 : !(!h || !h.length) }, empty: function () { return h = [], f = 0, this }, disable: function () { return h = i = b = void 0, this }, disabled: function () { return !h }, lock: function () { return i = void 0, b || k.disable(), this }, locked: function () { return !i }, fireWith: function (a, b) { return !h || c && !i || (b = b || [], b = [a, b.slice ? b.slice() : b], d ? i.push(b) : j(b)), this }, fire: function () { return k.fireWith(this, arguments), this }, fired: function () { return !!c } }; return k }, n.extend({ Deferred: function (a) { var b = [["resolve", "done", n.Callbacks("once memory"), "resolved"], ["reject", "fail", n.Callbacks("once memory"), "rejected"], ["notify", "progress", n.Callbacks("memory")]], c = "pending", d = { state: function () { return c }, always: function () { return e.done(arguments).fail(arguments), this }, then: function () { var a = arguments; return n.Deferred(function (c) { n.each(b, function (b, f) { var g = n.isFunction(a[b]) && a[b]; e[f[1]](function () { var a = g && g.apply(this, arguments); a && n.isFunction(a.promise) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[f[0] + "With"](this === d ? c.promise() : this, g ? [a] : arguments) }) }), a = null }).promise() }, promise: function (a) { return null != a ? n.extend(a, d) : d } }, e = {}; return d.pipe = d.then, n.each(b, function (a, f) { var g = f[2], h = f[3]; d[f[1]] = g.add, h && g.add(function () { c = h }, b[1 ^ a][2].disable, b[2][2].lock), e[f[0]] = function () { return e[f[0] + "With"](this === e ? d : this, arguments), this }, e[f[0] + "With"] = g.fireWith }), d.promise(e), a && a.call(e, e), e }, when: function (a) { var b = 0, c = d.call(arguments), e = c.length, f = 1 !== e || a && n.isFunction(a.promise) ? e : 0, g = 1 === f ? a : n.Deferred(), h = function (a, b, c) { return function (e) { b[a] = this, c[a] = arguments.length > 1 ? d.call(arguments) : e, c === i ? g.notifyWith(b, c) : --f || g.resolveWith(b, c) } }, i, j, k; if (e > 1) for (i = new Array(e), j = new Array(e), k = new Array(e); e > b; b++)c[b] && n.isFunction(c[b].promise) ? c[b].promise().done(h(b, k, c)).fail(g.reject).progress(h(b, j, i)) : --f; return f || g.resolveWith(k, c), g.promise() } }); var H; n.fn.ready = function (a) { return n.ready.promise().done(a), this }, n.extend({ isReady: !1, readyWait: 1, holdReady: function (a) { a ? n.readyWait++ : n.ready(!0) }, ready: function (a) { (a === !0 ? --n.readyWait : n.isReady) || (n.isReady = !0, a !== !0 && --n.readyWait > 0 || (H.resolveWith(l, [n]), n.fn.triggerHandler && (n(l).triggerHandler("ready"), n(l).off("ready")))) } }); function I() { l.removeEventListener("DOMContentLoaded", I, !1), a.removeEventListener("load", I, !1), n.ready() } n.ready.promise = function (b) { return H || (H = n.Deferred(), "complete" === l.readyState ? setTimeout(n.ready) : (l.addEventListener("DOMContentLoaded", I, !1), a.addEventListener("load", I, !1))), H.promise(b) }, n.ready.promise(); var J = n.access = function (a, b, c, d, e, f, g) { var h = 0, i = a.length, j = null == c; if ("object" === n.type(c)) { e = !0; for (h in c) n.access(a, b, h, c[h], !0, f, g) } else if (void 0 !== d && (e = !0, n.isFunction(d) || (g = !0), j && (g ? (b.call(a, d), b = null) : (j = b, b = function (a, b, c) { return j.call(n(a), c) })), b)) for (; i > h; h++)b(a[h], c, g ? d : d.call(a[h], h, b(a[h], c))); return e ? a : j ? b.call(a) : i ? b(a[0], c) : f }; n.acceptData = function (a) { return 1 === a.nodeType || 9 === a.nodeType || !+a.nodeType }; function K() { Object.defineProperty(this.cache = {}, 0, { get: function () { return {} } }), this.expando = n.expando + Math.random() } K.uid = 1, K.accepts = n.acceptData, K.prototype = { key: function (a) { if (!K.accepts(a)) return 0; var b = {}, c = a[this.expando]; if (!c) { c = K.uid++; try { b[this.expando] = { value: c }, Object.defineProperties(a, b) } catch (d) { b[this.expando] = c, n.extend(a, b) } } return this.cache[c] || (this.cache[c] = {}), c }, set: function (a, b, c) { var d, e = this.key(a), f = this.cache[e]; if ("string" == typeof b) f[b] = c; else if (n.isEmptyObject(f)) n.extend(this.cache[e], b); else for (d in b) f[d] = b[d]; return f }, get: function (a, b) { var c = this.cache[this.key(a)]; return void 0 === b ? c : c[b] }, access: function (a, b, c) { var d; return void 0 === b || b && "string" == typeof b && void 0 === c ? (d = this.get(a, b), void 0 !== d ? d : this.get(a, n.camelCase(b))) : (this.set(a, b, c), void 0 !== c ? c : b) }, remove: function (a, b) { var c, d, e, f = this.key(a), g = this.cache[f]; if (void 0 === b) this.cache[f] = {}; else { n.isArray(b) ? d = b.concat(b.map(n.camelCase)) : (e = n.camelCase(b), b in g ? d = [b, e] : (d = e, d = d in g ? [d] : d.match(E) || [])), c = d.length; while (c--) delete g[d[c]] } }, hasData: function (a) { return !n.isEmptyObject(this.cache[a[this.expando]] || {}) }, discard: function (a) { a[this.expando] && delete this.cache[a[this.expando]] } }; var L = new K, M = new K, N = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, O = /([A-Z])/g; function P(a, b, c) { var d; if (void 0 === c && 1 === a.nodeType) if (d = "data-" + b.replace(O, "-$1").toLowerCase(), c = a.getAttribute(d), "string" == typeof c) { try { c = "true" === c ? !0 : "false" === c ? !1 : "null" === c ? null : +c + "" === c ? +c : N.test(c) ? n.parseJSON(c) : c } catch (e) { } M.set(a, b, c) } else c = void 0; return c } n.extend({
4
- hasData: function (a) { return M.hasData(a) || L.hasData(a) }, data: function (a, b, c) { return M.access(a, b, c) }, removeData: function (a, b) {
5
- M.remove(a, b)
6
- }, _data: function (a, b, c) { return L.access(a, b, c) }, _removeData: function (a, b) { L.remove(a, b) }
7
- }), n.fn.extend({ data: function (a, b) { var c, d, e, f = this[0], g = f && f.attributes; if (void 0 === a) { if (this.length && (e = M.get(f), 1 === f.nodeType && !L.get(f, "hasDataAttrs"))) { c = g.length; while (c--) g[c] && (d = g[c].name, 0 === d.indexOf("data-") && (d = n.camelCase(d.slice(5)), P(f, d, e[d]))); L.set(f, "hasDataAttrs", !0) } return e } return "object" == typeof a ? this.each(function () { M.set(this, a) }) : J(this, function (b) { var c, d = n.camelCase(a); if (f && void 0 === b) { if (c = M.get(f, a), void 0 !== c) return c; if (c = M.get(f, d), void 0 !== c) return c; if (c = P(f, d, void 0), void 0 !== c) return c } else this.each(function () { var c = M.get(this, d); M.set(this, d, b), -1 !== a.indexOf("-") && void 0 !== c && M.set(this, a, b) }) }, null, b, arguments.length > 1, null, !0) }, removeData: function (a) { return this.each(function () { M.remove(this, a) }) } }), n.extend({ queue: function (a, b, c) { var d; return a ? (b = (b || "fx") + "queue", d = L.get(a, b), c && (!d || n.isArray(c) ? d = L.access(a, b, n.makeArray(c)) : d.push(c)), d || []) : void 0 }, dequeue: function (a, b) { b = b || "fx"; var c = n.queue(a, b), d = c.length, e = c.shift(), f = n._queueHooks(a, b), g = function () { n.dequeue(a, b) }; "inprogress" === e && (e = c.shift(), d--), e && ("fx" === b && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)), !d && f && f.empty.fire() }, _queueHooks: function (a, b) { var c = b + "queueHooks"; return L.get(a, c) || L.access(a, c, { empty: n.Callbacks("once memory").add(function () { L.remove(a, [b + "queue", c]) }) }) } }), n.fn.extend({ queue: function (a, b) { var c = 2; return "string" != typeof a && (b = a, a = "fx", c--), arguments.length < c ? n.queue(this[0], a) : void 0 === b ? this : this.each(function () { var c = n.queue(this, a, b); n._queueHooks(this, a), "fx" === a && "inprogress" !== c[0] && n.dequeue(this, a) }) }, dequeue: function (a) { return this.each(function () { n.dequeue(this, a) }) }, clearQueue: function (a) { return this.queue(a || "fx", []) }, promise: function (a, b) { var c, d = 1, e = n.Deferred(), f = this, g = this.length, h = function () { --d || e.resolveWith(f, [f]) }; "string" != typeof a && (b = a, a = void 0), a = a || "fx"; while (g--) c = L.get(f[g], a + "queueHooks"), c && c.empty && (d++ , c.empty.add(h)); return h(), e.promise(b) } }); var Q = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, R = ["Top", "Right", "Bottom", "Left"], S = function (a, b) { return a = b || a, "none" === n.css(a, "display") || !n.contains(a.ownerDocument, a) }, T = /^(?:checkbox|radio)$/i; !function () { var a = l.createDocumentFragment(), b = a.appendChild(l.createElement("div")), c = l.createElement("input"); c.setAttribute("type", "radio"), c.setAttribute("checked", "checked"), c.setAttribute("name", "t"), b.appendChild(c), k.checkClone = b.cloneNode(!0).cloneNode(!0).lastChild.checked, b.innerHTML = "<textarea>x</textarea>", k.noCloneChecked = !!b.cloneNode(!0).lastChild.defaultValue }(); var U = "undefined"; k.focusinBubbles = "onfocusin" in a; var V = /^key/, W = /^(?:mouse|pointer|contextmenu)|click/, X = /^(?:focusinfocus|focusoutblur)$/, Y = /^([^.]*)(?:\.(.+)|)$/; function Z() { return !0 } function $() { return !1 } function _() { try { return l.activeElement } catch (a) { } } n.event = { global: {}, add: function (a, b, c, d, e) { var f, g, h, i, j, k, l, m, o, p, q, r = L.get(a); if (r) { c.handler && (f = c, c = f.handler, e = f.selector), c.guid || (c.guid = n.guid++), (i = r.events) || (i = r.events = {}), (g = r.handle) || (g = r.handle = function (b) { return typeof n !== U && n.event.triggered !== b.type ? n.event.dispatch.apply(a, arguments) : void 0 }), b = (b || "").match(E) || [""], j = b.length; while (j--) h = Y.exec(b[j]) || [], o = q = h[1], p = (h[2] || "").split(".").sort(), o && (l = n.event.special[o] || {}, o = (e ? l.delegateType : l.bindType) || o, l = n.event.special[o] || {}, k = n.extend({ type: o, origType: q, data: d, handler: c, guid: c.guid, selector: e, needsContext: e && n.expr.match.needsContext.test(e), namespace: p.join(".") }, f), (m = i[o]) || (m = i[o] = [], m.delegateCount = 0, l.setup && l.setup.call(a, d, p, g) !== !1 || a.addEventListener && a.addEventListener(o, g, !1)), l.add && (l.add.call(a, k), k.handler.guid || (k.handler.guid = c.guid)), e ? m.splice(m.delegateCount++, 0, k) : m.push(k), n.event.global[o] = !0) } }, remove: function (a, b, c, d, e) { var f, g, h, i, j, k, l, m, o, p, q, r = L.hasData(a) && L.get(a); if (r && (i = r.events)) { b = (b || "").match(E) || [""], j = b.length; while (j--) if (h = Y.exec(b[j]) || [], o = q = h[1], p = (h[2] || "").split(".").sort(), o) { l = n.event.special[o] || {}, o = (d ? l.delegateType : l.bindType) || o, m = i[o] || [], h = h[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), g = f = m.length; while (f--) k = m[f], !e && q !== k.origType || c && c.guid !== k.guid || h && !h.test(k.namespace) || d && d !== k.selector && ("**" !== d || !k.selector) || (m.splice(f, 1), k.selector && m.delegateCount-- , l.remove && l.remove.call(a, k)); g && !m.length && (l.teardown && l.teardown.call(a, p, r.handle) !== !1 || n.removeEvent(a, o, r.handle), delete i[o]) } else for (o in i) n.event.remove(a, o + b[j], c, d, !0); n.isEmptyObject(i) && (delete r.handle, L.remove(a, "events")) } }, trigger: function (b, c, d, e) { var f, g, h, i, k, m, o, p = [d || l], q = j.call(b, "type") ? b.type : b, r = j.call(b, "namespace") ? b.namespace.split(".") : []; if (g = h = d = d || l, 3 !== d.nodeType && 8 !== d.nodeType && !X.test(q + n.event.triggered) && (q.indexOf(".") >= 0 && (r = q.split("."), q = r.shift(), r.sort()), k = q.indexOf(":") < 0 && "on" + q, b = b[n.expando] ? b : new n.Event(q, "object" == typeof b && b), b.isTrigger = e ? 2 : 3, b.namespace = r.join("."), b.namespace_re = b.namespace ? new RegExp("(^|\\.)" + r.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, b.result = void 0, b.target || (b.target = d), c = null == c ? [b] : n.makeArray(c, [b]), o = n.event.special[q] || {}, e || !o.trigger || o.trigger.apply(d, c) !== !1)) { if (!e && !o.noBubble && !n.isWindow(d)) { for (i = o.delegateType || q, X.test(i + q) || (g = g.parentNode); g; g = g.parentNode)p.push(g), h = g; h === (d.ownerDocument || l) && p.push(h.defaultView || h.parentWindow || a) } f = 0; while ((g = p[f++]) && !b.isPropagationStopped()) b.type = f > 1 ? i : o.bindType || q, m = (L.get(g, "events") || {})[b.type] && L.get(g, "handle"), m && m.apply(g, c), m = k && g[k], m && m.apply && n.acceptData(g) && (b.result = m.apply(g, c), b.result === !1 && b.preventDefault()); return b.type = q, e || b.isDefaultPrevented() || o._default && o._default.apply(p.pop(), c) !== !1 || !n.acceptData(d) || k && n.isFunction(d[q]) && !n.isWindow(d) && (h = d[k], h && (d[k] = null), n.event.triggered = q, d[q](), n.event.triggered = void 0, h && (d[k] = h)), b.result } }, dispatch: function (a) { a = n.event.fix(a); var b, c, e, f, g, h = [], i = d.call(arguments), j = (L.get(this, "events") || {})[a.type] || [], k = n.event.special[a.type] || {}; if (i[0] = a, a.delegateTarget = this, !k.preDispatch || k.preDispatch.call(this, a) !== !1) { h = n.event.handlers.call(this, a, j), b = 0; while ((f = h[b++]) && !a.isPropagationStopped()) { a.currentTarget = f.elem, c = 0; while ((g = f.handlers[c++]) && !a.isImmediatePropagationStopped()) (!a.namespace_re || a.namespace_re.test(g.namespace)) && (a.handleObj = g, a.data = g.data, e = ((n.event.special[g.origType] || {}).handle || g.handler).apply(f.elem, i), void 0 !== e && (a.result = e) === !1 && (a.preventDefault(), a.stopPropagation())) } return k.postDispatch && k.postDispatch.call(this, a), a.result } }, handlers: function (a, b) { var c, d, e, f, g = [], h = b.delegateCount, i = a.target; if (h && i.nodeType && (!a.button || "click" !== a.type)) for (; i !== this; i = i.parentNode || this)if (i.disabled !== !0 || "click" !== a.type) { for (d = [], c = 0; h > c; c++)f = b[c], e = f.selector + " ", void 0 === d[e] && (d[e] = f.needsContext ? n(e, this).index(i) >= 0 : n.find(e, this, null, [i]).length), d[e] && d.push(f); d.length && g.push({ elem: i, handlers: d }) } return h < b.length && g.push({ elem: this, handlers: b.slice(h) }), g }, props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), fixHooks: {}, keyHooks: { props: "char charCode key keyCode".split(" "), filter: function (a, b) { return null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode), a } }, mouseHooks: { props: "button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "), filter: function (a, b) { var c, d, e, f = b.button; return null == a.pageX && null != b.clientX && (c = a.target.ownerDocument || l, d = c.documentElement, e = c.body, a.pageX = b.clientX + (d && d.scrollLeft || e && e.scrollLeft || 0) - (d && d.clientLeft || e && e.clientLeft || 0), a.pageY = b.clientY + (d && d.scrollTop || e && e.scrollTop || 0) - (d && d.clientTop || e && e.clientTop || 0)), a.which || void 0 === f || (a.which = 1 & f ? 1 : 2 & f ? 3 : 4 & f ? 2 : 0), a } }, fix: function (a) { if (a[n.expando]) return a; var b, c, d, e = a.type, f = a, g = this.fixHooks[e]; g || (this.fixHooks[e] = g = W.test(e) ? this.mouseHooks : V.test(e) ? this.keyHooks : {}), d = g.props ? this.props.concat(g.props) : this.props, a = new n.Event(f), b = d.length; while (b--) c = d[b], a[c] = f[c]; return a.target || (a.target = l), 3 === a.target.nodeType && (a.target = a.target.parentNode), g.filter ? g.filter(a, f) : a }, special: { load: { noBubble: !0 }, focus: { trigger: function () { return this !== _() && this.focus ? (this.focus(), !1) : void 0 }, delegateType: "focusin" }, blur: { trigger: function () { return this === _() && this.blur ? (this.blur(), !1) : void 0 }, delegateType: "focusout" }, click: { trigger: function () { return "checkbox" === this.type && this.click && n.nodeName(this, "input") ? (this.click(), !1) : void 0 }, _default: function (a) { return n.nodeName(a.target, "a") } }, beforeunload: { postDispatch: function (a) { void 0 !== a.result && a.originalEvent && (a.originalEvent.returnValue = a.result) } } }, simulate: function (a, b, c, d) { var e = n.extend(new n.Event, c, { type: a, isSimulated: !0, originalEvent: {} }); d ? n.event.trigger(e, null, b) : n.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault() } }, n.removeEvent = function (a, b, c) { a.removeEventListener && a.removeEventListener(b, c, !1) }, n.Event = function (a, b) { return this instanceof n.Event ? (a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || void 0 === a.defaultPrevented && a.returnValue === !1 ? Z : $) : this.type = a, b && n.extend(this, b), this.timeStamp = a && a.timeStamp || n.now(), void (this[n.expando] = !0)) : new n.Event(a, b) }, n.Event.prototype = { isDefaultPrevented: $, isPropagationStopped: $, isImmediatePropagationStopped: $, preventDefault: function () { var a = this.originalEvent; this.isDefaultPrevented = Z, a && a.preventDefault && a.preventDefault() }, stopPropagation: function () { var a = this.originalEvent; this.isPropagationStopped = Z, a && a.stopPropagation && a.stopPropagation() }, stopImmediatePropagation: function () { var a = this.originalEvent; this.isImmediatePropagationStopped = Z, a && a.stopImmediatePropagation && a.stopImmediatePropagation(), this.stopPropagation() } }, n.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function (a, b) { n.event.special[a] = { delegateType: b, bindType: b, handle: function (a) { var c, d = this, e = a.relatedTarget, f = a.handleObj; return (!e || e !== d && !n.contains(d, e)) && (a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b), c } } }), k.focusinBubbles || n.each({ focus: "focusin", blur: "focusout" }, function (a, b) { var c = function (a) { n.event.simulate(b, a.target, n.event.fix(a), !0) }; n.event.special[b] = { setup: function () { var d = this.ownerDocument || this, e = L.access(d, b); e || d.addEventListener(a, c, !0), L.access(d, b, (e || 0) + 1) }, teardown: function () { var d = this.ownerDocument || this, e = L.access(d, b) - 1; e ? L.access(d, b, e) : (d.removeEventListener(a, c, !0), L.remove(d, b)) } } }), n.fn.extend({ on: function (a, b, c, d, e) { var f, g; if ("object" == typeof a) { "string" != typeof b && (c = c || b, b = void 0); for (g in a) this.on(g, b, c, a[g], e); return this } if (null == c && null == d ? (d = b, c = b = void 0) : null == d && ("string" == typeof b ? (d = c, c = void 0) : (d = c, c = b, b = void 0)), d === !1) d = $; else if (!d) return this; return 1 === e && (f = d, d = function (a) { return n().off(a), f.apply(this, arguments) }, d.guid = f.guid || (f.guid = n.guid++)), this.each(function () { n.event.add(this, a, d, c, b) }) }, one: function (a, b, c, d) { return this.on(a, b, c, d, 1) }, off: function (a, b, c) { var d, e; if (a && a.preventDefault && a.handleObj) return d = a.handleObj, n(a.delegateTarget).off(d.namespace ? d.origType + "." + d.namespace : d.origType, d.selector, d.handler), this; if ("object" == typeof a) { for (e in a) this.off(e, b, a[e]); return this } return (b === !1 || "function" == typeof b) && (c = b, b = void 0), c === !1 && (c = $), this.each(function () { n.event.remove(this, a, c, b) }) }, trigger: function (a, b) { return this.each(function () { n.event.trigger(a, b, this) }) }, triggerHandler: function (a, b) { var c = this[0]; return c ? n.event.trigger(a, b, c, !0) : void 0 } }); var ab = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, bb = /<([\w:]+)/, cb = /<|&#?\w+;/, db = /<(?:script|style|link)/i, eb = /checked\s*(?:[^=]|=\s*.checked.)/i, fb = /^$|\/(?:java|ecma)script/i, gb = /^true\/(.*)/, hb = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, ib = { option: [1, "<select multiple='multiple'>", "</select>"], thead: [1, "<table>", "</table>"], col: [2, "<table><colgroup>", "</colgroup></table>"], tr: [2, "<table><tbody>", "</tbody></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], _default: [0, "", ""] }; ib.optgroup = ib.option, ib.tbody = ib.tfoot = ib.colgroup = ib.caption = ib.thead, ib.th = ib.td; function jb(a, b) { return n.nodeName(a, "table") && n.nodeName(11 !== b.nodeType ? b : b.firstChild, "tr") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a } function kb(a) { return a.type = (null !== a.getAttribute("type")) + "/" + a.type, a } function lb(a) { var b = gb.exec(a.type); return b ? a.type = b[1] : a.removeAttribute("type"), a } function mb(a, b) { for (var c = 0, d = a.length; d > c; c++)L.set(a[c], "globalEval", !b || L.get(b[c], "globalEval")) } function nb(a, b) { var c, d, e, f, g, h, i, j; if (1 === b.nodeType) { if (L.hasData(a) && (f = L.access(a), g = L.set(b, f), j = f.events)) { delete g.handle, g.events = {}; for (e in j) for (c = 0, d = j[e].length; d > c; c++)n.event.add(b, e, j[e][c]) } M.hasData(a) && (h = M.access(a), i = n.extend({}, h), M.set(b, i)) } } function ob(a, b) { var c = a.getElementsByTagName ? a.getElementsByTagName(b || "*") : a.querySelectorAll ? a.querySelectorAll(b || "*") : []; return void 0 === b || b && n.nodeName(a, b) ? n.merge([a], c) : c } function pb(a, b) { var c = b.nodeName.toLowerCase(); "input" === c && T.test(a.type) ? b.checked = a.checked : ("input" === c || "textarea" === c) && (b.defaultValue = a.defaultValue) } n.extend({ clone: function (a, b, c) { var d, e, f, g, h = a.cloneNode(!0), i = n.contains(a.ownerDocument, a); if (!(k.noCloneChecked || 1 !== a.nodeType && 11 !== a.nodeType || n.isXMLDoc(a))) for (g = ob(h), f = ob(a), d = 0, e = f.length; e > d; d++)pb(f[d], g[d]); if (b) if (c) for (f = f || ob(a), g = g || ob(h), d = 0, e = f.length; e > d; d++)nb(f[d], g[d]); else nb(a, h); return g = ob(h, "script"), g.length > 0 && mb(g, !i && ob(a, "script")), h }, buildFragment: function (a, b, c, d) { for (var e, f, g, h, i, j, k = b.createDocumentFragment(), l = [], m = 0, o = a.length; o > m; m++)if (e = a[m], e || 0 === e) if ("object" === n.type(e)) n.merge(l, e.nodeType ? [e] : e); else if (cb.test(e)) { f = f || k.appendChild(b.createElement("div")), g = (bb.exec(e) || ["", ""])[1].toLowerCase(), h = ib[g] || ib._default, f.innerHTML = h[1] + e.replace(ab, "<$1></$2>") + h[2], j = h[0]; while (j--) f = f.lastChild; n.merge(l, f.childNodes), f = k.firstChild, f.textContent = "" } else l.push(b.createTextNode(e)); k.textContent = "", m = 0; while (e = l[m++]) if ((!d || -1 === n.inArray(e, d)) && (i = n.contains(e.ownerDocument, e), f = ob(k.appendChild(e), "script"), i && mb(f), c)) { j = 0; while (e = f[j++]) fb.test(e.type || "") && c.push(e) } return k }, cleanData: function (a) { for (var b, c, d, e, f = n.event.special, g = 0; void 0 !== (c = a[g]); g++) { if (n.acceptData(c) && (e = c[L.expando], e && (b = L.cache[e]))) { if (b.events) for (d in b.events) f[d] ? n.event.remove(c, d) : n.removeEvent(c, d, b.handle); L.cache[e] && delete L.cache[e] } delete M.cache[c[M.expando]] } } }), n.fn.extend({ text: function (a) { return J(this, function (a) { return void 0 === a ? n.text(this) : this.empty().each(function () { (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && (this.textContent = a) }) }, null, a, arguments.length) }, append: function () { return this.domManip(arguments, function (a) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var b = jb(this, a); b.appendChild(a) } }) }, prepend: function () { return this.domManip(arguments, function (a) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var b = jb(this, a); b.insertBefore(a, b.firstChild) } }) }, before: function () { return this.domManip(arguments, function (a) { this.parentNode && this.parentNode.insertBefore(a, this) }) }, after: function () { return this.domManip(arguments, function (a) { this.parentNode && this.parentNode.insertBefore(a, this.nextSibling) }) }, remove: function (a, b) { for (var c, d = a ? n.filter(a, this) : this, e = 0; null != (c = d[e]); e++)b || 1 !== c.nodeType || n.cleanData(ob(c)), c.parentNode && (b && n.contains(c.ownerDocument, c) && mb(ob(c, "script")), c.parentNode.removeChild(c)); return this }, empty: function () { for (var a, b = 0; null != (a = this[b]); b++)1 === a.nodeType && (n.cleanData(ob(a, !1)), a.textContent = ""); return this }, clone: function (a, b) { return a = null == a ? !1 : a, b = null == b ? a : b, this.map(function () { return n.clone(this, a, b) }) }, html: function (a) { return J(this, function (a) { var b = this[0] || {}, c = 0, d = this.length; if (void 0 === a && 1 === b.nodeType) return b.innerHTML; if ("string" == typeof a && !db.test(a) && !ib[(bb.exec(a) || ["", ""])[1].toLowerCase()]) { a = a.replace(ab, "<$1></$2>"); try { for (; d > c; c++)b = this[c] || {}, 1 === b.nodeType && (n.cleanData(ob(b, !1)), b.innerHTML = a); b = 0 } catch (e) { } } b && this.empty().append(a) }, null, a, arguments.length) }, replaceWith: function () { var a = arguments[0]; return this.domManip(arguments, function (b) { a = this.parentNode, n.cleanData(ob(this)), a && a.replaceChild(b, this) }), a && (a.length || a.nodeType) ? this : this.remove() }, detach: function (a) { return this.remove(a, !0) }, domManip: function (a, b) { a = e.apply([], a); var c, d, f, g, h, i, j = 0, l = this.length, m = this, o = l - 1, p = a[0], q = n.isFunction(p); if (q || l > 1 && "string" == typeof p && !k.checkClone && eb.test(p)) return this.each(function (c) { var d = m.eq(c); q && (a[0] = p.call(this, c, d.html())), d.domManip(a, b) }); if (l && (c = n.buildFragment(a, this[0].ownerDocument, !1, this), d = c.firstChild, 1 === c.childNodes.length && (c = d), d)) { for (f = n.map(ob(c, "script"), kb), g = f.length; l > j; j++)h = c, j !== o && (h = n.clone(h, !0, !0), g && n.merge(f, ob(h, "script"))), b.call(this[j], h, j); if (g) for (i = f[f.length - 1].ownerDocument, n.map(f, lb), j = 0; g > j; j++)h = f[j], fb.test(h.type || "") && !L.access(h, "globalEval") && n.contains(i, h) && (h.src ? n._evalUrl && n._evalUrl(h.src) : n.globalEval(h.textContent.replace(hb, ""))) } return this } }), n.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (a, b) { n.fn[a] = function (a) { for (var c, d = [], e = n(a), g = e.length - 1, h = 0; g >= h; h++)c = h === g ? this : this.clone(!0), n(e[h])[b](c), f.apply(d, c.get()); return this.pushStack(d) } }); var qb, rb = {}; function sb(b, c) { var d, e = n(c.createElement(b)).appendTo(c.body), f = a.getDefaultComputedStyle && (d = a.getDefaultComputedStyle(e[0])) ? d.display : n.css(e[0], "display"); return e.detach(), f } function tb(a) { var b = l, c = rb[a]; return c || (c = sb(a, b), "none" !== c && c || (qb = (qb || n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement), b = qb[0].contentDocument, b.write(), b.close(), c = sb(a, b), qb.detach()), rb[a] = c), c } var ub = /^margin/, vb = new RegExp("^(" + Q + ")(?!px)[a-z%]+$", "i"), wb = function (a) { return a.ownerDocument.defaultView.getComputedStyle(a, null) }; function xb(a, b, c) { var d, e, f, g, h = a.style; return c = c || wb(a), c && (g = c.getPropertyValue(b) || c[b]), c && ("" !== g || n.contains(a.ownerDocument, a) || (g = n.style(a, b)), vb.test(g) && ub.test(b) && (d = h.width, e = h.minWidth, f = h.maxWidth, h.minWidth = h.maxWidth = h.width = g, g = c.width, h.width = d, h.minWidth = e, h.maxWidth = f)), void 0 !== g ? g + "" : g } function yb(a, b) { return { get: function () { return a() ? void delete this.get : (this.get = b).apply(this, arguments) } } } !function () { var b, c, d = l.documentElement, e = l.createElement("div"), f = l.createElement("div"); if (f.style) { f.style.backgroundClip = "content-box", f.cloneNode(!0).style.backgroundClip = "", k.clearCloneStyle = "content-box" === f.style.backgroundClip, e.style.cssText = "border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute", e.appendChild(f); function g() { f.style.cssText = "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute", f.innerHTML = "", d.appendChild(e); var g = a.getComputedStyle(f, null); b = "1%" !== g.top, c = "4px" === g.width, d.removeChild(e) } a.getComputedStyle && n.extend(k, { pixelPosition: function () { return g(), b }, boxSizingReliable: function () { return null == c && g(), c }, reliableMarginRight: function () { var b, c = f.appendChild(l.createElement("div")); return c.style.cssText = f.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0", c.style.marginRight = c.style.width = "0", f.style.width = "1px", d.appendChild(e), b = !parseFloat(a.getComputedStyle(c, null).marginRight), d.removeChild(e), b } }) } }(), n.swap = function (a, b, c, d) { var e, f, g = {}; for (f in b) g[f] = a.style[f], a.style[f] = b[f]; e = c.apply(a, d || []); for (f in b) a.style[f] = g[f]; return e }; var zb = /^(none|table(?!-c[ea]).+)/, Ab = new RegExp("^(" + Q + ")(.*)$", "i"), Bb = new RegExp("^([+-])=(" + Q + ")", "i"), Cb = { position: "absolute", visibility: "hidden", display: "block" }, Db = { letterSpacing: "0", fontWeight: "400" }, Eb = ["Webkit", "O", "Moz", "ms"]; function Fb(a, b) { if (b in a) return b; var c = b[0].toUpperCase() + b.slice(1), d = b, e = Eb.length; while (e--) if (b = Eb[e] + c, b in a) return b; return d } function Gb(a, b, c) { var d = Ab.exec(b); return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b } function Hb(a, b, c, d, e) { for (var f = c === (d ? "border" : "content") ? 4 : "width" === b ? 1 : 0, g = 0; 4 > f; f += 2)"margin" === c && (g += n.css(a, c + R[f], !0, e)), d ? ("content" === c && (g -= n.css(a, "padding" + R[f], !0, e)), "margin" !== c && (g -= n.css(a, "border" + R[f] + "Width", !0, e))) : (g += n.css(a, "padding" + R[f], !0, e), "padding" !== c && (g += n.css(a, "border" + R[f] + "Width", !0, e))); return g } function Ib(a, b, c) { var d = !0, e = "width" === b ? a.offsetWidth : a.offsetHeight, f = wb(a), g = "border-box" === n.css(a, "boxSizing", !1, f); if (0 >= e || null == e) { if (e = xb(a, b, f), (0 > e || null == e) && (e = a.style[b]), vb.test(e)) return e; d = g && (k.boxSizingReliable() || e === a.style[b]), e = parseFloat(e) || 0 } return e + Hb(a, b, c || (g ? "border" : "content"), d, f) + "px" } function Jb(a, b) { for (var c, d, e, f = [], g = 0, h = a.length; h > g; g++)d = a[g], d.style && (f[g] = L.get(d, "olddisplay"), c = d.style.display, b ? (f[g] || "none" !== c || (d.style.display = ""), "" === d.style.display && S(d) && (f[g] = L.access(d, "olddisplay", tb(d.nodeName)))) : (e = S(d), "none" === c && e || L.set(d, "olddisplay", e ? c : n.css(d, "display")))); for (g = 0; h > g; g++)d = a[g], d.style && (b && "none" !== d.style.display && "" !== d.style.display || (d.style.display = b ? f[g] || "" : "none")); return a } n.extend({ cssHooks: { opacity: { get: function (a, b) { if (b) { var c = xb(a, "opacity"); return "" === c ? "1" : c } } } }, cssNumber: { columnCount: !0, fillOpacity: !0, flexGrow: !0, flexShrink: !0, fontWeight: !0, lineHeight: !0, opacity: !0, order: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0 }, cssProps: { "float": "cssFloat" }, style: function (a, b, c, d) { if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) { var e, f, g, h = n.camelCase(b), i = a.style; return b = n.cssProps[h] || (n.cssProps[h] = Fb(i, h)), g = n.cssHooks[b] || n.cssHooks[h], void 0 === c ? g && "get" in g && void 0 !== (e = g.get(a, !1, d)) ? e : i[b] : (f = typeof c, "string" === f && (e = Bb.exec(c)) && (c = (e[1] + 1) * e[2] + parseFloat(n.css(a, b)), f = "number"), null != c && c === c && ("number" !== f || n.cssNumber[h] || (c += "px"), k.clearCloneStyle || "" !== c || 0 !== b.indexOf("background") || (i[b] = "inherit"), g && "set" in g && void 0 === (c = g.set(a, c, d)) || (i[b] = c)), void 0) } }, css: function (a, b, c, d) { var e, f, g, h = n.camelCase(b); return b = n.cssProps[h] || (n.cssProps[h] = Fb(a.style, h)), g = n.cssHooks[b] || n.cssHooks[h], g && "get" in g && (e = g.get(a, !0, c)), void 0 === e && (e = xb(a, b, d)), "normal" === e && b in Db && (e = Db[b]), "" === c || c ? (f = parseFloat(e), c === !0 || n.isNumeric(f) ? f || 0 : e) : e } }), n.each(["height", "width"], function (a, b) { n.cssHooks[b] = { get: function (a, c, d) { return c ? zb.test(n.css(a, "display")) && 0 === a.offsetWidth ? n.swap(a, Cb, function () { return Ib(a, b, d) }) : Ib(a, b, d) : void 0 }, set: function (a, c, d) { var e = d && wb(a); return Gb(a, c, d ? Hb(a, b, d, "border-box" === n.css(a, "boxSizing", !1, e), e) : 0) } } }), n.cssHooks.marginRight = yb(k.reliableMarginRight, function (a, b) { return b ? n.swap(a, { display: "inline-block" }, xb, [a, "marginRight"]) : void 0 }), n.each({ margin: "", padding: "", border: "Width" }, function (a, b) { n.cssHooks[a + b] = { expand: function (c) { for (var d = 0, e = {}, f = "string" == typeof c ? c.split(" ") : [c]; 4 > d; d++)e[a + R[d] + b] = f[d] || f[d - 2] || f[0]; return e } }, ub.test(a) || (n.cssHooks[a + b].set = Gb) }), n.fn.extend({ css: function (a, b) { return J(this, function (a, b, c) { var d, e, f = {}, g = 0; if (n.isArray(b)) { for (d = wb(a), e = b.length; e > g; g++)f[b[g]] = n.css(a, b[g], !1, d); return f } return void 0 !== c ? n.style(a, b, c) : n.css(a, b) }, a, b, arguments.length > 1) }, show: function () { return Jb(this, !0) }, hide: function () { return Jb(this) }, toggle: function (a) { return "boolean" == typeof a ? a ? this.show() : this.hide() : this.each(function () { S(this) ? n(this).show() : n(this).hide() }) } }); function Kb(a, b, c, d, e) { return new Kb.prototype.init(a, b, c, d, e) } n.Tween = Kb, Kb.prototype = { constructor: Kb, init: function (a, b, c, d, e, f) { this.elem = a, this.prop = c, this.easing = e || "swing", this.options = b, this.start = this.now = this.cur(), this.end = d, this.unit = f || (n.cssNumber[c] ? "" : "px") }, cur: function () { var a = Kb.propHooks[this.prop]; return a && a.get ? a.get(this) : Kb.propHooks._default.get(this) }, run: function (a) { var b, c = Kb.propHooks[this.prop]; return this.pos = b = this.options.duration ? n.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration) : a, this.now = (this.end - this.start) * b + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), c && c.set ? c.set(this) : Kb.propHooks._default.set(this), this } }, Kb.prototype.init.prototype = Kb.prototype, Kb.propHooks = { _default: { get: function (a) { var b; return null == a.elem[a.prop] || a.elem.style && null != a.elem.style[a.prop] ? (b = n.css(a.elem, a.prop, ""), b && "auto" !== b ? b : 0) : a.elem[a.prop] }, set: function (a) { n.fx.step[a.prop] ? n.fx.step[a.prop](a) : a.elem.style && (null != a.elem.style[n.cssProps[a.prop]] || n.cssHooks[a.prop]) ? n.style(a.elem, a.prop, a.now + a.unit) : a.elem[a.prop] = a.now } } }, Kb.propHooks.scrollTop = Kb.propHooks.scrollLeft = { set: function (a) { a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now) } }, n.easing = { linear: function (a) { return a }, swing: function (a) { return .5 - Math.cos(a * Math.PI) / 2 } }, n.fx = Kb.prototype.init, n.fx.step = {}; var Lb, Mb, Nb = /^(?:toggle|show|hide)$/, Ob = new RegExp("^(?:([+-])=|)(" + Q + ")([a-z%]*)$", "i"), Pb = /queueHooks$/, Qb = [Vb], Rb = { "*": [function (a, b) { var c = this.createTween(a, b), d = c.cur(), e = Ob.exec(b), f = e && e[3] || (n.cssNumber[a] ? "" : "px"), g = (n.cssNumber[a] || "px" !== f && +d) && Ob.exec(n.css(c.elem, a)), h = 1, i = 20; if (g && g[3] !== f) { f = f || g[3], e = e || [], g = +d || 1; do h = h || ".5", g /= h, n.style(c.elem, a, g + f); while (h !== (h = c.cur() / d) && 1 !== h && --i) } return e && (g = c.start = +g || +d || 0, c.unit = f, c.end = e[1] ? g + (e[1] + 1) * e[2] : +e[2]), c }] }; function Sb() { return setTimeout(function () { Lb = void 0 }), Lb = n.now() } function Tb(a, b) { var c, d = 0, e = { height: a }; for (b = b ? 1 : 0; 4 > d; d += 2 - b)c = R[d], e["margin" + c] = e["padding" + c] = a; return b && (e.opacity = e.width = a), e } function Ub(a, b, c) { for (var d, e = (Rb[b] || []).concat(Rb["*"]), f = 0, g = e.length; g > f; f++)if (d = e[f].call(c, b, a)) return d } function Vb(a, b, c) { var d, e, f, g, h, i, j, k, l = this, m = {}, o = a.style, p = a.nodeType && S(a), q = L.get(a, "fxshow"); c.queue || (h = n._queueHooks(a, "fx"), null == h.unqueued && (h.unqueued = 0, i = h.empty.fire, h.empty.fire = function () { h.unqueued || i() }), h.unqueued++ , l.always(function () { l.always(function () { h.unqueued-- , n.queue(a, "fx").length || h.empty.fire() }) })), 1 === a.nodeType && ("height" in b || "width" in b) && (c.overflow = [o.overflow, o.overflowX, o.overflowY], j = n.css(a, "display"), k = "none" === j ? L.get(a, "olddisplay") || tb(a.nodeName) : j, "inline" === k && "none" === n.css(a, "float") && (o.display = "inline-block")), c.overflow && (o.overflow = "hidden", l.always(function () { o.overflow = c.overflow[0], o.overflowX = c.overflow[1], o.overflowY = c.overflow[2] })); for (d in b) if (e = b[d], Nb.exec(e)) { if (delete b[d], f = f || "toggle" === e, e === (p ? "hide" : "show")) { if ("show" !== e || !q || void 0 === q[d]) continue; p = !0 } m[d] = q && q[d] || n.style(a, d) } else j = void 0; if (n.isEmptyObject(m)) "inline" === ("none" === j ? tb(a.nodeName) : j) && (o.display = j); else { q ? "hidden" in q && (p = q.hidden) : q = L.access(a, "fxshow", {}), f && (q.hidden = !p), p ? n(a).show() : l.done(function () { n(a).hide() }), l.done(function () { var b; L.remove(a, "fxshow"); for (b in m) n.style(a, b, m[b]) }); for (d in m) g = Ub(p ? q[d] : 0, d, l), d in q || (q[d] = g.start, p && (g.end = g.start, g.start = "width" === d || "height" === d ? 1 : 0)) } } function Wb(a, b) { var c, d, e, f, g; for (c in a) if (d = n.camelCase(c), e = b[d], f = a[c], n.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = n.cssHooks[d], g && "expand" in g) { f = g.expand(f), delete a[d]; for (c in f) c in a || (a[c] = f[c], b[c] = e) } else b[d] = e } function Xb(a, b, c) { var d, e, f = 0, g = Qb.length, h = n.Deferred().always(function () { delete i.elem }), i = function () { if (e) return !1; for (var b = Lb || Sb(), c = Math.max(0, j.startTime + j.duration - b), d = c / j.duration || 0, f = 1 - d, g = 0, i = j.tweens.length; i > g; g++)j.tweens[g].run(f); return h.notifyWith(a, [j, f, c]), 1 > f && i ? c : (h.resolveWith(a, [j]), !1) }, j = h.promise({ elem: a, props: n.extend({}, b), opts: n.extend(!0, { specialEasing: {} }, c), originalProperties: b, originalOptions: c, startTime: Lb || Sb(), duration: c.duration, tweens: [], createTween: function (b, c) { var d = n.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing); return j.tweens.push(d), d }, stop: function (b) { var c = 0, d = b ? j.tweens.length : 0; if (e) return this; for (e = !0; d > c; c++)j.tweens[c].run(1); return b ? h.resolveWith(a, [j, b]) : h.rejectWith(a, [j, b]), this } }), k = j.props; for (Wb(k, j.opts.specialEasing); g > f; f++)if (d = Qb[f].call(j, a, k, j.opts)) return d; return n.map(k, Ub, j), n.isFunction(j.opts.start) && j.opts.start.call(a, j), n.fx.timer(n.extend(i, { elem: a, anim: j, queue: j.opts.queue })), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always) } n.Animation = n.extend(Xb, { tweener: function (a, b) { n.isFunction(a) ? (b = a, a = ["*"]) : a = a.split(" "); for (var c, d = 0, e = a.length; e > d; d++)c = a[d], Rb[c] = Rb[c] || [], Rb[c].unshift(b) }, prefilter: function (a, b) { b ? Qb.unshift(a) : Qb.push(a) } }), n.speed = function (a, b, c) { var d = a && "object" == typeof a ? n.extend({}, a) : { complete: c || !c && b || n.isFunction(a) && a, duration: a, easing: c && b || b && !n.isFunction(b) && b }; return d.duration = n.fx.off ? 0 : "number" == typeof d.duration ? d.duration : d.duration in n.fx.speeds ? n.fx.speeds[d.duration] : n.fx.speeds._default, (null == d.queue || d.queue === !0) && (d.queue = "fx"), d.old = d.complete, d.complete = function () { n.isFunction(d.old) && d.old.call(this), d.queue && n.dequeue(this, d.queue) }, d }, n.fn.extend({ fadeTo: function (a, b, c, d) { return this.filter(S).css("opacity", 0).show().end().animate({ opacity: b }, a, c, d) }, animate: function (a, b, c, d) { var e = n.isEmptyObject(a), f = n.speed(b, c, d), g = function () { var b = Xb(this, n.extend({}, a), f); (e || L.get(this, "finish")) && b.stop(!0) }; return g.finish = g, e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g) }, stop: function (a, b, c) { var d = function (a) { var b = a.stop; delete a.stop, b(c) }; return "string" != typeof a && (c = b, b = a, a = void 0), b && a !== !1 && this.queue(a || "fx", []), this.each(function () { var b = !0, e = null != a && a + "queueHooks", f = n.timers, g = L.get(this); if (e) g[e] && g[e].stop && d(g[e]); else for (e in g) g[e] && g[e].stop && Pb.test(e) && d(g[e]); for (e = f.length; e--;)f[e].elem !== this || null != a && f[e].queue !== a || (f[e].anim.stop(c), b = !1, f.splice(e, 1)); (b || !c) && n.dequeue(this, a) }) }, finish: function (a) { return a !== !1 && (a = a || "fx"), this.each(function () { var b, c = L.get(this), d = c[a + "queue"], e = c[a + "queueHooks"], f = n.timers, g = d ? d.length : 0; for (c.finish = !0, n.queue(this, a, []), e && e.stop && e.stop.call(this, !0), b = f.length; b--;)f[b].elem === this && f[b].queue === a && (f[b].anim.stop(!0), f.splice(b, 1)); for (b = 0; g > b; b++)d[b] && d[b].finish && d[b].finish.call(this); delete c.finish }) } }), n.each(["toggle", "show", "hide"], function (a, b) { var c = n.fn[b]; n.fn[b] = function (a, d, e) { return null == a || "boolean" == typeof a ? c.apply(this, arguments) : this.animate(Tb(b, !0), a, d, e) } }), n.each({ slideDown: Tb("show"), slideUp: Tb("hide"), slideToggle: Tb("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function (a, b) { n.fn[a] = function (a, c, d) { return this.animate(b, a, c, d) } }), n.timers = [], n.fx.tick = function () { var a, b = 0, c = n.timers; for (Lb = n.now(); b < c.length; b++)a = c[b], a() || c[b] !== a || c.splice(b--, 1); c.length || n.fx.stop(), Lb = void 0 }, n.fx.timer = function (a) { n.timers.push(a), a() ? n.fx.start() : n.timers.pop() }, n.fx.interval = 13, n.fx.start = function () { Mb || (Mb = setInterval(n.fx.tick, n.fx.interval)) }, n.fx.stop = function () { clearInterval(Mb), Mb = null }, n.fx.speeds = { slow: 600, fast: 200, _default: 400 }, n.fn.delay = function (a, b) { return a = n.fx ? n.fx.speeds[a] || a : a, b = b || "fx", this.queue(b, function (b, c) { var d = setTimeout(b, a); c.stop = function () { clearTimeout(d) } }) }, function () { var a = l.createElement("input"), b = l.createElement("select"), c = b.appendChild(l.createElement("option")); a.type = "checkbox", k.checkOn = "" !== a.value, k.optSelected = c.selected, b.disabled = !0, k.optDisabled = !c.disabled, a = l.createElement("input"), a.value = "t", a.type = "radio", k.radioValue = "t" === a.value }(); var Yb, Zb, $b = n.expr.attrHandle; n.fn.extend({ attr: function (a, b) { return J(this, n.attr, a, b, arguments.length > 1) }, removeAttr: function (a) { return this.each(function () { n.removeAttr(this, a) }) } }), n.extend({
8
- attr: function (a, b, c) {
9
- var d, e, f = a.nodeType; if (a && 3 !== f && 8 !== f && 2 !== f) return typeof a.getAttribute === U ? n.prop(a, b, c) : (1 === f && n.isXMLDoc(a) || (b = b.toLowerCase(), d = n.attrHooks[b] || (n.expr.match.bool.test(b) ? Zb : Yb)), void 0 === c ? d && "get" in d && null !== (e = d.get(a, b)) ? e : (e = n.find.attr(a, b), null == e ? void 0 : e) : null !== c ? d && "set" in d && void 0 !== (e = d.set(a, c, b)) ? e : (a.setAttribute(b, c + ""), c) : void n.removeAttr(a, b))
10
- }, removeAttr: function (a, b) { var c, d, e = 0, f = b && b.match(E); if (f && 1 === a.nodeType) while (c = f[e++]) d = n.propFix[c] || c, n.expr.match.bool.test(c) && (a[d] = !1), a.removeAttribute(c) }, attrHooks: { type: { set: function (a, b) { if (!k.radioValue && "radio" === b && n.nodeName(a, "input")) { var c = a.value; return a.setAttribute("type", b), c && (a.value = c), b } } } }
11
- }), Zb = { set: function (a, b, c) { return b === !1 ? n.removeAttr(a, c) : a.setAttribute(c, c), c } }, n.each(n.expr.match.bool.source.match(/\w+/g), function (a, b) { var c = $b[b] || n.find.attr; $b[b] = function (a, b, d) { var e, f; return d || (f = $b[b], $b[b] = e, e = null != c(a, b, d) ? b.toLowerCase() : null, $b[b] = f), e } }); var _b = /^(?:input|select|textarea|button)$/i; n.fn.extend({ prop: function (a, b) { return J(this, n.prop, a, b, arguments.length > 1) }, removeProp: function (a) { return this.each(function () { delete this[n.propFix[a] || a] }) } }), n.extend({ propFix: { "for": "htmlFor", "class": "className" }, prop: function (a, b, c) { var d, e, f, g = a.nodeType; if (a && 3 !== g && 8 !== g && 2 !== g) return f = 1 !== g || !n.isXMLDoc(a), f && (b = n.propFix[b] || b, e = n.propHooks[b]), void 0 !== c ? e && "set" in e && void 0 !== (d = e.set(a, c, b)) ? d : a[b] = c : e && "get" in e && null !== (d = e.get(a, b)) ? d : a[b] }, propHooks: { tabIndex: { get: function (a) { return a.hasAttribute("tabindex") || _b.test(a.nodeName) || a.href ? a.tabIndex : -1 } } } }), k.optSelected || (n.propHooks.selected = { get: function (a) { var b = a.parentNode; return b && b.parentNode && b.parentNode.selectedIndex, null } }), n.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () { n.propFix[this.toLowerCase()] = this }); var ac = /[\t\r\n\f]/g; n.fn.extend({ addClass: function (a) { var b, c, d, e, f, g, h = "string" == typeof a && a, i = 0, j = this.length; if (n.isFunction(a)) return this.each(function (b) { n(this).addClass(a.call(this, b, this.className)) }); if (h) for (b = (a || "").match(E) || []; j > i; i++)if (c = this[i], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(ac, " ") : " ")) { f = 0; while (e = b[f++]) d.indexOf(" " + e + " ") < 0 && (d += e + " "); g = n.trim(d), c.className !== g && (c.className = g) } return this }, removeClass: function (a) { var b, c, d, e, f, g, h = 0 === arguments.length || "string" == typeof a && a, i = 0, j = this.length; if (n.isFunction(a)) return this.each(function (b) { n(this).removeClass(a.call(this, b, this.className)) }); if (h) for (b = (a || "").match(E) || []; j > i; i++)if (c = this[i], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(ac, " ") : "")) { f = 0; while (e = b[f++]) while (d.indexOf(" " + e + " ") >= 0) d = d.replace(" " + e + " ", " "); g = a ? n.trim(d) : "", c.className !== g && (c.className = g) } return this }, toggleClass: function (a, b) { var c = typeof a; return "boolean" == typeof b && "string" === c ? b ? this.addClass(a) : this.removeClass(a) : this.each(n.isFunction(a) ? function (c) { n(this).toggleClass(a.call(this, c, this.className, b), b) } : function () { if ("string" === c) { var b, d = 0, e = n(this), f = a.match(E) || []; while (b = f[d++]) e.hasClass(b) ? e.removeClass(b) : e.addClass(b) } else (c === U || "boolean" === c) && (this.className && L.set(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : L.get(this, "__className__") || "") }) }, hasClass: function (a) { for (var b = " " + a + " ", c = 0, d = this.length; d > c; c++)if (1 === this[c].nodeType && (" " + this[c].className + " ").replace(ac, " ").indexOf(b) >= 0) return !0; return !1 } }); var bc = /\r/g; n.fn.extend({ val: function (a) { var b, c, d, e = this[0]; { if (arguments.length) return d = n.isFunction(a), this.each(function (c) { var e; 1 === this.nodeType && (e = d ? a.call(this, c, n(this).val()) : a, null == e ? e = "" : "number" == typeof e ? e += "" : n.isArray(e) && (e = n.map(e, function (a) { return null == a ? "" : a + "" })), b = n.valHooks[this.type] || n.valHooks[this.nodeName.toLowerCase()], b && "set" in b && void 0 !== b.set(this, e, "value") || (this.value = e)) }); if (e) return b = n.valHooks[e.type] || n.valHooks[e.nodeName.toLowerCase()], b && "get" in b && void 0 !== (c = b.get(e, "value")) ? c : (c = e.value, "string" == typeof c ? c.replace(bc, "") : null == c ? "" : c) } } }), n.extend({ valHooks: { option: { get: function (a) { var b = n.find.attr(a, "value"); return null != b ? b : n.trim(n.text(a)) } }, select: { get: function (a) { for (var b, c, d = a.options, e = a.selectedIndex, f = "select-one" === a.type || 0 > e, g = f ? null : [], h = f ? e + 1 : d.length, i = 0 > e ? h : f ? e : 0; h > i; i++)if (c = d[i], !(!c.selected && i !== e || (k.optDisabled ? c.disabled : null !== c.getAttribute("disabled")) || c.parentNode.disabled && n.nodeName(c.parentNode, "optgroup"))) { if (b = n(c).val(), f) return b; g.push(b) } return g }, set: function (a, b) { var c, d, e = a.options, f = n.makeArray(b), g = e.length; while (g--) d = e[g], (d.selected = n.inArray(d.value, f) >= 0) && (c = !0); return c || (a.selectedIndex = -1), f } } } }), n.each(["radio", "checkbox"], function () { n.valHooks[this] = { set: function (a, b) { return n.isArray(b) ? a.checked = n.inArray(n(a).val(), b) >= 0 : void 0 } }, k.checkOn || (n.valHooks[this].get = function (a) { return null === a.getAttribute("value") ? "on" : a.value }) }), n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function (a, b) { n.fn[b] = function (a, c) { return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b) } }), n.fn.extend({ hover: function (a, b) { return this.mouseenter(a).mouseleave(b || a) }, bind: function (a, b, c) { return this.on(a, null, b, c) }, unbind: function (a, b) { return this.off(a, null, b) }, delegate: function (a, b, c, d) { return this.on(b, a, c, d) }, undelegate: function (a, b, c) { return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", c) } }); var cc = n.now(), dc = /\?/; n.parseJSON = function (a) { return JSON.parse(a + "") }, n.parseXML = function (a) { var b, c; if (!a || "string" != typeof a) return null; try { c = new DOMParser, b = c.parseFromString(a, "text/xml") } catch (d) { b = void 0 } return (!b || b.getElementsByTagName("parsererror").length) && n.error("Invalid XML: " + a), b }; var ec, fc, gc = /#.*$/, hc = /([?&])_=[^&]*/, ic = /^(.*?):[ \t]*([^\r\n]*)$/gm, jc = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, kc = /^(?:GET|HEAD)$/, lc = /^\/\//, mc = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/, nc = {}, oc = {}, pc = "*/".concat("*"); try { fc = location.href } catch (qc) { fc = l.createElement("a"), fc.href = "", fc = fc.href } ec = mc.exec(fc.toLowerCase()) || []; function rc(a) { return function (b, c) { "string" != typeof b && (c = b, b = "*"); var d, e = 0, f = b.toLowerCase().match(E) || []; if (n.isFunction(c)) while (d = f[e++]) "+" === d[0] ? (d = d.slice(1) || "*", (a[d] = a[d] || []).unshift(c)) : (a[d] = a[d] || []).push(c) } } function sc(a, b, c, d) { var e = {}, f = a === oc; function g(h) { var i; return e[h] = !0, n.each(a[h] || [], function (a, h) { var j = h(b, c, d); return "string" != typeof j || f || e[j] ? f ? !(i = j) : void 0 : (b.dataTypes.unshift(j), g(j), !1) }), i } return g(b.dataTypes[0]) || !e["*"] && g("*") } function tc(a, b) { var c, d, e = n.ajaxSettings.flatOptions || {}; for (c in b) void 0 !== b[c] && ((e[c] ? a : d || (d = {}))[c] = b[c]); return d && n.extend(!0, a, d), a } function uc(a, b, c) { var d, e, f, g, h = a.contents, i = a.dataTypes; while ("*" === i[0]) i.shift(), void 0 === d && (d = a.mimeType || b.getResponseHeader("Content-Type")); if (d) for (e in h) if (h[e] && h[e].test(d)) { i.unshift(e); break } if (i[0] in c) f = i[0]; else { for (e in c) { if (!i[0] || a.converters[e + " " + i[0]]) { f = e; break } g || (g = e) } f = f || g } return f ? (f !== i[0] && i.unshift(f), c[f]) : void 0 } function vc(a, b, c, d) { var e, f, g, h, i, j = {}, k = a.dataTypes.slice(); if (k[1]) for (g in a.converters) j[g.toLowerCase()] = a.converters[g]; f = k.shift(); while (f) if (a.responseFields[f] && (c[a.responseFields[f]] = b), !i && d && a.dataFilter && (b = a.dataFilter(b, a.dataType)), i = f, f = k.shift()) if ("*" === f) f = i; else if ("*" !== i && i !== f) { if (g = j[i + " " + f] || j["* " + f], !g) for (e in j) if (h = e.split(" "), h[1] === f && (g = j[i + " " + h[0]] || j["* " + h[0]])) { g === !0 ? g = j[e] : j[e] !== !0 && (f = h[0], k.unshift(h[1])); break } if (g !== !0) if (g && a["throws"]) b = g(b); else try { b = g(b) } catch (l) { return { state: "parsererror", error: g ? l : "No conversion from " + i + " to " + f } } } return { state: "success", data: b } } n.extend({ active: 0, lastModified: {}, etag: {}, ajaxSettings: { url: fc, type: "GET", isLocal: jc.test(ec[1]), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": pc, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" }, contents: { xml: /xml/, html: /html/, json: /json/ }, responseFields: { xml: "responseXML", text: "responseText", json: "responseJSON" }, converters: { "* text": String, "text html": !0, "text json": n.parseJSON, "text xml": n.parseXML }, flatOptions: { url: !0, context: !0 } }, ajaxSetup: function (a, b) { return b ? tc(tc(a, n.ajaxSettings), b) : tc(n.ajaxSettings, a) }, ajaxPrefilter: rc(nc), ajaxTransport: rc(oc), ajax: function (a, b) { "object" == typeof a && (b = a, a = void 0), b = b || {}; var c, d, e, f, g, h, i, j, k = n.ajaxSetup({}, b), l = k.context || k, m = k.context && (l.nodeType || l.jquery) ? n(l) : n.event, o = n.Deferred(), p = n.Callbacks("once memory"), q = k.statusCode || {}, r = {}, s = {}, t = 0, u = "canceled", v = { readyState: 0, getResponseHeader: function (a) { var b; if (2 === t) { if (!f) { f = {}; while (b = ic.exec(e)) f[b[1].toLowerCase()] = b[2] } b = f[a.toLowerCase()] } return null == b ? null : b }, getAllResponseHeaders: function () { return 2 === t ? e : null }, setRequestHeader: function (a, b) { var c = a.toLowerCase(); return t || (a = s[c] = s[c] || a, r[a] = b), this }, overrideMimeType: function (a) { return t || (k.mimeType = a), this }, statusCode: function (a) { var b; if (a) if (2 > t) for (b in a) q[b] = [q[b], a[b]]; else v.always(a[v.status]); return this }, abort: function (a) { var b = a || u; return c && c.abort(b), x(0, b), this } }; if (o.promise(v).complete = p.add, v.success = v.done, v.error = v.fail, k.url = ((a || k.url || fc) + "").replace(gc, "").replace(lc, ec[1] + "//"), k.type = b.method || b.type || k.method || k.type, k.dataTypes = n.trim(k.dataType || "*").toLowerCase().match(E) || [""], null == k.crossDomain && (h = mc.exec(k.url.toLowerCase()), k.crossDomain = !(!h || h[1] === ec[1] && h[2] === ec[2] && (h[3] || ("http:" === h[1] ? "80" : "443")) === (ec[3] || ("http:" === ec[1] ? "80" : "443")))), k.data && k.processData && "string" != typeof k.data && (k.data = n.param(k.data, k.traditional)), sc(nc, k, b, v), 2 === t) return v; i = k.global, i && 0 === n.active++ && n.event.trigger("ajaxStart"), k.type = k.type.toUpperCase(), k.hasContent = !kc.test(k.type), d = k.url, k.hasContent || (k.data && (d = k.url += (dc.test(d) ? "&" : "?") + k.data, delete k.data), k.cache === !1 && (k.url = hc.test(d) ? d.replace(hc, "$1_=" + cc++) : d + (dc.test(d) ? "&" : "?") + "_=" + cc++)), k.ifModified && (n.lastModified[d] && v.setRequestHeader("If-Modified-Since", n.lastModified[d]), n.etag[d] && v.setRequestHeader("If-None-Match", n.etag[d])), (k.data && k.hasContent && k.contentType !== !1 || b.contentType) && v.setRequestHeader("Content-Type", k.contentType), v.setRequestHeader("Accept", k.dataTypes[0] && k.accepts[k.dataTypes[0]] ? k.accepts[k.dataTypes[0]] + ("*" !== k.dataTypes[0] ? ", " + pc + "; q=0.01" : "") : k.accepts["*"]); for (j in k.headers) v.setRequestHeader(j, k.headers[j]); if (k.beforeSend && (k.beforeSend.call(l, v, k) === !1 || 2 === t)) return v.abort(); u = "abort"; for (j in { success: 1, error: 1, complete: 1 }) v[j](k[j]); if (c = sc(oc, k, b, v)) { v.readyState = 1, i && m.trigger("ajaxSend", [v, k]), k.async && k.timeout > 0 && (g = setTimeout(function () { v.abort("timeout") }, k.timeout)); try { t = 1, c.send(r, x) } catch (w) { if (!(2 > t)) throw w; x(-1, w) } } else x(-1, "No Transport"); function x(a, b, f, h) { var j, r, s, u, w, x = b; 2 !== t && (t = 2, g && clearTimeout(g), c = void 0, e = h || "", v.readyState = a > 0 ? 4 : 0, j = a >= 200 && 300 > a || 304 === a, f && (u = uc(k, v, f)), u = vc(k, u, v, j), j ? (k.ifModified && (w = v.getResponseHeader("Last-Modified"), w && (n.lastModified[d] = w), w = v.getResponseHeader("etag"), w && (n.etag[d] = w)), 204 === a || "HEAD" === k.type ? x = "nocontent" : 304 === a ? x = "notmodified" : (x = u.state, r = u.data, s = u.error, j = !s)) : (s = x, (a || !x) && (x = "error", 0 > a && (a = 0))), v.status = a, v.statusText = (b || x) + "", j ? o.resolveWith(l, [r, x, v]) : o.rejectWith(l, [v, x, s]), v.statusCode(q), q = void 0, i && m.trigger(j ? "ajaxSuccess" : "ajaxError", [v, k, j ? r : s]), p.fireWith(l, [v, x]), i && (m.trigger("ajaxComplete", [v, k]), --n.active || n.event.trigger("ajaxStop"))) } return v }, getJSON: function (a, b, c) { return n.get(a, b, c, "json") }, getScript: function (a, b) { return n.get(a, void 0, b, "script") } }), n.each(["get", "post"], function (a, b) { n[b] = function (a, c, d, e) { return n.isFunction(c) && (e = e || d, d = c, c = void 0), n.ajax({ url: a, type: b, dataType: e, data: c, success: d }) } }), n.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (a, b) { n.fn[b] = function (a) { return this.on(b, a) } }), n._evalUrl = function (a) { return n.ajax({ url: a, type: "GET", dataType: "script", async: !1, global: !1, "throws": !0 }) }, n.fn.extend({ wrapAll: function (a) { var b; return n.isFunction(a) ? this.each(function (b) { n(this).wrapAll(a.call(this, b)) }) : (this[0] && (b = n(a, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && b.insertBefore(this[0]), b.map(function () { var a = this; while (a.firstElementChild) a = a.firstElementChild; return a }).append(this)), this) }, wrapInner: function (a) { return this.each(n.isFunction(a) ? function (b) { n(this).wrapInner(a.call(this, b)) } : function () { var b = n(this), c = b.contents(); c.length ? c.wrapAll(a) : b.append(a) }) }, wrap: function (a) { var b = n.isFunction(a); return this.each(function (c) { n(this).wrapAll(b ? a.call(this, c) : a) }) }, unwrap: function () { return this.parent().each(function () { n.nodeName(this, "body") || n(this).replaceWith(this.childNodes) }).end() } }), n.expr.filters.hidden = function (a) { return a.offsetWidth <= 0 && a.offsetHeight <= 0 }, n.expr.filters.visible = function (a) { return !n.expr.filters.hidden(a) }; var wc = /%20/g, xc = /\[\]$/, yc = /\r?\n/g, zc = /^(?:submit|button|image|reset|file)$/i, Ac = /^(?:input|select|textarea|keygen)/i; function Bc(a, b, c, d) { var e; if (n.isArray(b)) n.each(b, function (b, e) { c || xc.test(a) ? d(a, e) : Bc(a + "[" + ("object" == typeof e ? b : "") + "]", e, c, d) }); else if (c || "object" !== n.type(b)) d(a, b); else for (e in b) Bc(a + "[" + e + "]", b[e], c, d) } n.param = function (a, b) { var c, d = [], e = function (a, b) { b = n.isFunction(b) ? b() : null == b ? "" : b, d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b) }; if (void 0 === b && (b = n.ajaxSettings && n.ajaxSettings.traditional), n.isArray(a) || a.jquery && !n.isPlainObject(a)) n.each(a, function () { e(this.name, this.value) }); else for (c in a) Bc(c, a[c], b, e); return d.join("&").replace(wc, "+") }, n.fn.extend({ serialize: function () { return n.param(this.serializeArray()) }, serializeArray: function () { return this.map(function () { var a = n.prop(this, "elements"); return a ? n.makeArray(a) : this }).filter(function () { var a = this.type; return this.name && !n(this).is(":disabled") && Ac.test(this.nodeName) && !zc.test(a) && (this.checked || !T.test(a)) }).map(function (a, b) { var c = n(this).val(); return null == c ? null : n.isArray(c) ? n.map(c, function (a) { return { name: b.name, value: a.replace(yc, "\r\n") } }) : { name: b.name, value: c.replace(yc, "\r\n") } }).get() } }), n.ajaxSettings.xhr = function () { try { return new XMLHttpRequest } catch (a) { } }; var Cc = 0, Dc = {}, Ec = { 0: 200, 1223: 204 }, Fc = n.ajaxSettings.xhr(); a.ActiveXObject && n(a).on("unload", function () { for (var a in Dc) Dc[a]() }), k.cors = !!Fc && "withCredentials" in Fc, k.ajax = Fc = !!Fc, n.ajaxTransport(function (a) { var b; return k.cors || Fc && !a.crossDomain ? { send: function (c, d) { var e, f = a.xhr(), g = ++Cc; if (f.open(a.type, a.url, a.async, a.username, a.password), a.xhrFields) for (e in a.xhrFields) f[e] = a.xhrFields[e]; a.mimeType && f.overrideMimeType && f.overrideMimeType(a.mimeType), a.crossDomain || c["X-Requested-With"] || (c["X-Requested-With"] = "XMLHttpRequest"); for (e in c) f.setRequestHeader(e, c[e]); b = function (a) { return function () { b && (delete Dc[g], b = f.onload = f.onerror = null, "abort" === a ? f.abort() : "error" === a ? d(f.status, f.statusText) : d(Ec[f.status] || f.status, f.statusText, "string" == typeof f.responseText ? { text: f.responseText } : void 0, f.getAllResponseHeaders())) } }, f.onload = b(), f.onerror = b("error"), b = Dc[g] = b("abort"); try { f.send(a.hasContent && a.data || null) } catch (h) { if (b) throw h } }, abort: function () { b && b() } } : void 0 }), n.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /(?:java|ecma)script/ }, converters: { "text script": function (a) { return n.globalEval(a), a } } }), n.ajaxPrefilter("script", function (a) { void 0 === a.cache && (a.cache = !1), a.crossDomain && (a.type = "GET") }), n.ajaxTransport("script", function (a) { if (a.crossDomain) { var b, c; return { send: function (d, e) { b = n("<script>").prop({ async: !0, charset: a.scriptCharset, src: a.url }).on("load error", c = function (a) { b.remove(), c = null, a && e("error" === a.type ? 404 : 200, a.type) }), l.head.appendChild(b[0]) }, abort: function () { c && c() } } } }); var Gc = [], Hc = /(=)\?(?=&|$)|\?\?/; n.ajaxSetup({ jsonp: "callback", jsonpCallback: function () { var a = Gc.pop() || n.expando + "_" + cc++; return this[a] = !0, a } }), n.ajaxPrefilter("json jsonp", function (b, c, d) { var e, f, g, h = b.jsonp !== !1 && (Hc.test(b.url) ? "url" : "string" == typeof b.data && !(b.contentType || "").indexOf("application/x-www-form-urlencoded") && Hc.test(b.data) && "data"); return h || "jsonp" === b.dataTypes[0] ? (e = b.jsonpCallback = n.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback, h ? b[h] = b[h].replace(Hc, "$1" + e) : b.jsonp !== !1 && (b.url += (dc.test(b.url) ? "&" : "?") + b.jsonp + "=" + e), b.converters["script json"] = function () { return g || n.error(e + " was not called"), g[0] }, b.dataTypes[0] = "json", f = a[e], a[e] = function () { g = arguments }, d.always(function () { a[e] = f, b[e] && (b.jsonpCallback = c.jsonpCallback, Gc.push(e)), g && n.isFunction(f) && f(g[0]), g = f = void 0 }), "script") : void 0 }), n.parseHTML = function (a, b, c) { if (!a || "string" != typeof a) return null; "boolean" == typeof b && (c = b, b = !1), b = b || l; var d = v.exec(a), e = !c && []; return d ? [b.createElement(d[1])] : (d = n.buildFragment([a], b, e), e && e.length && n(e).remove(), n.merge([], d.childNodes)) }; var Ic = n.fn.load; n.fn.load = function (a, b, c) { if ("string" != typeof a && Ic) return Ic.apply(this, arguments); var d, e, f, g = this, h = a.indexOf(" "); return h >= 0 && (d = n.trim(a.slice(h)), a = a.slice(0, h)), n.isFunction(b) ? (c = b, b = void 0) : b && "object" == typeof b && (e = "POST"), g.length > 0 && n.ajax({ url: a, type: e, dataType: "html", data: b }).done(function (a) { f = arguments, g.html(d ? n("<div>").append(n.parseHTML(a)).find(d) : a) }).complete(c && function (a, b) { g.each(c, f || [a.responseText, b, a]) }), this }, n.expr.filters.animated = function (a) { return n.grep(n.timers, function (b) { return a === b.elem }).length }; var Jc = a.document.documentElement; function Kc(a) { return n.isWindow(a) ? a : 9 === a.nodeType && a.defaultView } n.offset = { setOffset: function (a, b, c) { var d, e, f, g, h, i, j, k = n.css(a, "position"), l = n(a), m = {}; "static" === k && (a.style.position = "relative"), h = l.offset(), f = n.css(a, "top"), i = n.css(a, "left"), j = ("absolute" === k || "fixed" === k) && (f + i).indexOf("auto") > -1, j ? (d = l.position(), g = d.top, e = d.left) : (g = parseFloat(f) || 0, e = parseFloat(i) || 0), n.isFunction(b) && (b = b.call(a, c, h)), null != b.top && (m.top = b.top - h.top + g), null != b.left && (m.left = b.left - h.left + e), "using" in b ? b.using.call(a, m) : l.css(m) } }, n.fn.extend({ offset: function (a) { if (arguments.length) return void 0 === a ? this : this.each(function (b) { n.offset.setOffset(this, a, b) }); var b, c, d = this[0], e = { top: 0, left: 0 }, f = d && d.ownerDocument; if (f) return b = f.documentElement, n.contains(b, d) ? (typeof d.getBoundingClientRect !== U && (e = d.getBoundingClientRect()), c = Kc(f), { top: e.top + c.pageYOffset - b.clientTop, left: e.left + c.pageXOffset - b.clientLeft }) : e }, position: function () { if (this[0]) { var a, b, c = this[0], d = { top: 0, left: 0 }; return "fixed" === n.css(c, "position") ? b = c.getBoundingClientRect() : (a = this.offsetParent(), b = this.offset(), n.nodeName(a[0], "html") || (d = a.offset()), d.top += n.css(a[0], "borderTopWidth", !0), d.left += n.css(a[0], "borderLeftWidth", !0)), { top: b.top - d.top - n.css(c, "marginTop", !0), left: b.left - d.left - n.css(c, "marginLeft", !0) } } }, offsetParent: function () { return this.map(function () { var a = this.offsetParent || Jc; while (a && !n.nodeName(a, "html") && "static" === n.css(a, "position")) a = a.offsetParent; return a || Jc }) } }), n.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function (b, c) { var d = "pageYOffset" === c; n.fn[b] = function (e) { return J(this, function (b, e, f) { var g = Kc(b); return void 0 === f ? g ? g[c] : b[e] : void (g ? g.scrollTo(d ? a.pageXOffset : f, d ? f : a.pageYOffset) : b[e] = f) }, b, e, arguments.length, null) } }), n.each(["top", "left"], function (a, b) { n.cssHooks[b] = yb(k.pixelPosition, function (a, c) { return c ? (c = xb(a, b), vb.test(c) ? n(a).position()[b] + "px" : c) : void 0 }) }), n.each({ Height: "height", Width: "width" }, function (a, b) { n.each({ padding: "inner" + a, content: b, "": "outer" + a }, function (c, d) { n.fn[d] = function (d, e) { var f = arguments.length && (c || "boolean" != typeof d), g = c || (d === !0 || e === !0 ? "margin" : "border"); return J(this, function (b, c, d) { var e; return n.isWindow(b) ? b.document.documentElement["client" + a] : 9 === b.nodeType ? (e = b.documentElement, Math.max(b.body["scroll" + a], e["scroll" + a], b.body["offset" + a], e["offset" + a], e["client" + a])) : void 0 === d ? n.css(b, c, g) : n.style(b, c, d, g) }, b, f ? d : void 0, f, null) } }) }), n.fn.size = function () { return this.length }, n.fn.andSelf = n.fn.addBack, "function" == typeof define && define.amd && define("jquery", [], function () { return n }); var Lc = a.jQuery, Mc = a.$; return n.noConflict = function (b) { return a.$ === n && (a.$ = Mc), b && a.jQuery === n && (a.jQuery = Lc), n }, typeof b === U && (a.jQuery = a.$ = n), n
12
- });
13
- // Bootstrap
14
- /*!
15
- * Bootstrap v3.1.1 (http://getbootstrap.com)
16
- * Copyright 2011-2014 Twitter, Inc.
17
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
18
- */
19
- if ("undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); +function (a) { "use strict"; function b() { var a = document.createElement("bootstrap"), b = { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd otransitionend", transition: "transitionend" }; for (var c in b) if (void 0 !== a.style[c]) return { end: b[c] }; return !1 } a.fn.emulateTransitionEnd = function (b) { var c = !1, d = this; a(this).one(a.support.transition.end, function () { c = !0 }); var e = function () { c || a(d).trigger(a.support.transition.end) }; return setTimeout(e, b), this }, a(function () { a.support.transition = b() }) }(jQuery), +function (a) { "use strict"; var b = '[data-dismiss="alert"]', c = function (c) { a(c).on("click", b, this.close) }; c.prototype.close = function (b) { function c() { f.trigger("closed.bs.alert").remove() } var d = a(this), e = d.attr("data-target"); e || (e = d.attr("href"), e = e && e.replace(/.*(?=#[^\s]*$)/, "")); var f = a(e); b && b.preventDefault(), f.length || (f = d.hasClass("alert") ? d : d.parent()), f.trigger(b = a.Event("close.bs.alert")), b.isDefaultPrevented() || (f.removeClass("in"), a.support.transition && f.hasClass("fade") ? f.one(a.support.transition.end, c).emulateTransitionEnd(150) : c()) }; var d = a.fn.alert; a.fn.alert = function (b) { return this.each(function () { var d = a(this), e = d.data("bs.alert"); e || d.data("bs.alert", e = new c(this)), "string" == typeof b && e[b].call(d) }) }, a.fn.alert.Constructor = c, a.fn.alert.noConflict = function () { return a.fn.alert = d, this }, a(document).on("click.bs.alert.data-api", b, c.prototype.close) }(jQuery), +function (a) { "use strict"; var b = function (c, d) { this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.isLoading = !1 }; b.DEFAULTS = { loadingText: "loading..." }, b.prototype.setState = function (b) { var c = "disabled", d = this.$element, e = d.is("input") ? "val" : "html", f = d.data(); b += "Text", f.resetText || d.data("resetText", d[e]()), d[e](f[b] || this.options[b]), setTimeout(a.proxy(function () { "loadingText" == b ? (this.isLoading = !0, d.addClass(c).attr(c, c)) : this.isLoading && (this.isLoading = !1, d.removeClass(c).removeAttr(c)) }, this), 0) }, b.prototype.toggle = function () { var a = !0, b = this.$element.closest('[data-toggle="buttons"]'); if (b.length) { var c = this.$element.find("input"); "radio" == c.prop("type") && (c.prop("checked") && this.$element.hasClass("active") ? a = !1 : b.find(".active").removeClass("active")), a && c.prop("checked", !this.$element.hasClass("active")).trigger("change") } a && this.$element.toggleClass("active") }; var c = a.fn.button; a.fn.button = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.button"), f = "object" == typeof c && c; e || d.data("bs.button", e = new b(this, f)), "toggle" == c ? e.toggle() : c && e.setState(c) }) }, a.fn.button.Constructor = b, a.fn.button.noConflict = function () { return a.fn.button = c, this }, a(document).on("click.bs.button.data-api", "[data-toggle^=button]", function (b) { var c = a(b.target); c.hasClass("btn") || (c = c.closest(".btn")), c.button("toggle"), b.preventDefault() }) }(jQuery), +function (a) { "use strict"; var b = function (b, c) { this.$element = a(b), this.$indicators = this.$element.find(".carousel-indicators"), this.options = c, this.paused = this.sliding = this.interval = this.$active = this.$items = null, "hover" == this.options.pause && this.$element.on("mouseenter", a.proxy(this.pause, this)).on("mouseleave", a.proxy(this.cycle, this)) }; b.DEFAULTS = { interval: 5e3, pause: "hover", wrap: !0 }, b.prototype.cycle = function (b) { return b || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)), this }, b.prototype.getActiveIndex = function () { return this.$active = this.$element.find(".item.active"), this.$items = this.$active.parent().children(), this.$items.index(this.$active) }, b.prototype.to = function (b) { var c = this, d = this.getActiveIndex(); return b > this.$items.length - 1 || 0 > b ? void 0 : this.sliding ? this.$element.one("slid.bs.carousel", function () { c.to(b) }) : d == b ? this.pause().cycle() : this.slide(b > d ? "next" : "prev", a(this.$items[b])) }, b.prototype.pause = function (b) { return b || (this.paused = !0), this.$element.find(".next, .prev").length && a.support.transition && (this.$element.trigger(a.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this }, b.prototype.next = function () { return this.sliding ? void 0 : this.slide("next") }, b.prototype.prev = function () { return this.sliding ? void 0 : this.slide("prev") }, b.prototype.slide = function (b, c) { var d = this.$element.find(".item.active"), e = c || d[b](), f = this.interval, g = "next" == b ? "left" : "right", h = "next" == b ? "first" : "last", i = this; if (!e.length) { if (!this.options.wrap) return; e = this.$element.find(".item")[h]() } if (e.hasClass("active")) return this.sliding = !1; var j = a.Event("slide.bs.carousel", { relatedTarget: e[0], direction: g }); return this.$element.trigger(j), j.isDefaultPrevented() ? void 0 : (this.sliding = !0, f && this.pause(), this.$indicators.length && (this.$indicators.find(".active").removeClass("active"), this.$element.one("slid.bs.carousel", function () { var b = a(i.$indicators.children()[i.getActiveIndex()]); b && b.addClass("active") })), a.support.transition && this.$element.hasClass("slide") ? (e.addClass(b), e[0].offsetWidth, d.addClass(g), e.addClass(g), d.one(a.support.transition.end, function () { e.removeClass([b, g].join(" ")).addClass("active"), d.removeClass(["active", g].join(" ")), i.sliding = !1, setTimeout(function () { i.$element.trigger("slid.bs.carousel") }, 0) }).emulateTransitionEnd(1e3 * d.css("transition-duration").slice(0, -1))) : (d.removeClass("active"), e.addClass("active"), this.sliding = !1, this.$element.trigger("slid.bs.carousel")), f && this.cycle(), this) }; var c = a.fn.carousel; a.fn.carousel = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.carousel"), f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c), g = "string" == typeof c ? c : f.slide; e || d.data("bs.carousel", e = new b(this, f)), "number" == typeof c ? e.to(c) : g ? e[g]() : f.interval && e.pause().cycle() }) }, a.fn.carousel.Constructor = b, a.fn.carousel.noConflict = function () { return a.fn.carousel = c, this }, a(document).on("click.bs.carousel.data-api", "[data-slide], [data-slide-to]", function (b) { var c, d = a(this), e = a(d.attr("data-target") || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, "")), f = a.extend({}, e.data(), d.data()), g = d.attr("data-slide-to"); g && (f.interval = !1), e.carousel(f), (g = d.attr("data-slide-to")) && e.data("bs.carousel").to(g), b.preventDefault() }), a(window).on("load", function () { a('[data-ride="carousel"]').each(function () { var b = a(this); b.carousel(b.data()) }) }) }(jQuery), +function (a) { "use strict"; var b = function (c, d) { this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.transitioning = null, this.options.parent && (this.$parent = a(this.options.parent)), this.options.toggle && this.toggle() }; b.DEFAULTS = { toggle: !0 }, b.prototype.dimension = function () { var a = this.$element.hasClass("width"); return a ? "width" : "height" }, b.prototype.show = function () { if (!this.transitioning && !this.$element.hasClass("in")) { var b = a.Event("show.bs.collapse"); if (this.$element.trigger(b), !b.isDefaultPrevented()) { var c = this.$parent && this.$parent.find("> .panel > .in"); if (c && c.length) { var d = c.data("bs.collapse"); if (d && d.transitioning) return; c.collapse("hide"), d || c.data("bs.collapse", null) } var e = this.dimension(); this.$element.removeClass("collapse").addClass("collapsing")[e](0), this.transitioning = 1; var f = function () { this.$element.removeClass("collapsing").addClass("collapse in")[e]("auto"), this.transitioning = 0, this.$element.trigger("shown.bs.collapse") }; if (!a.support.transition) return f.call(this); var g = a.camelCase(["scroll", e].join("-")); this.$element.one(a.support.transition.end, a.proxy(f, this)).emulateTransitionEnd(350)[e](this.$element[0][g]) } } }, b.prototype.hide = function () { if (!this.transitioning && this.$element.hasClass("in")) { var b = a.Event("hide.bs.collapse"); if (this.$element.trigger(b), !b.isDefaultPrevented()) { var c = this.dimension(); this.$element[c](this.$element[c]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"), this.transitioning = 1; var d = function () { this.transitioning = 0, this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse") }; return a.support.transition ? void this.$element[c](0).one(a.support.transition.end, a.proxy(d, this)).emulateTransitionEnd(350) : d.call(this) } } }, b.prototype.toggle = function () { this[this.$element.hasClass("in") ? "hide" : "show"]() }; var c = a.fn.collapse; a.fn.collapse = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.collapse"), f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c); !e && f.toggle && "show" == c && (c = !c), e || d.data("bs.collapse", e = new b(this, f)), "string" == typeof c && e[c]() }) }, a.fn.collapse.Constructor = b, a.fn.collapse.noConflict = function () { return a.fn.collapse = c, this }, a(document).on("click.bs.collapse.data-api", "[data-toggle=collapse]", function (b) { var c, d = a(this), e = d.attr("data-target") || b.preventDefault() || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, ""), f = a(e), g = f.data("bs.collapse"), h = g ? "toggle" : d.data(), i = d.attr("data-parent"), j = i && a(i); g && g.transitioning || (j && j.find('[data-toggle=collapse][data-parent="' + i + '"]').not(d).addClass("collapsed"), d[f.hasClass("in") ? "addClass" : "removeClass"]("collapsed")), f.collapse(h) }) }(jQuery), +function (a) { "use strict"; function b(b) { a(d).remove(), a(e).each(function () { var d = c(a(this)), e = { relatedTarget: this }; d.hasClass("open") && (d.trigger(b = a.Event("hide.bs.dropdown", e)), b.isDefaultPrevented() || d.removeClass("open").trigger("hidden.bs.dropdown", e)) }) } function c(b) { var c = b.attr("data-target"); c || (c = b.attr("href"), c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, "")); var d = c && a(c); return d && d.length ? d : b.parent() } var d = ".dropdown-backdrop", e = "[data-toggle=dropdown]", f = function (b) { a(b).on("click.bs.dropdown", this.toggle) }; f.prototype.toggle = function (d) { var e = a(this); if (!e.is(".disabled, :disabled")) { var f = c(e), g = f.hasClass("open"); if (b(), !g) { "ontouchstart" in document.documentElement && !f.closest(".navbar-nav").length && a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click", b); var h = { relatedTarget: this }; if (f.trigger(d = a.Event("show.bs.dropdown", h)), d.isDefaultPrevented()) return; f.toggleClass("open").trigger("shown.bs.dropdown", h), e.focus() } return !1 } }, f.prototype.keydown = function (b) { if (/(38|40|27)/.test(b.keyCode)) { var d = a(this); if (b.preventDefault(), b.stopPropagation(), !d.is(".disabled, :disabled")) { var f = c(d), g = f.hasClass("open"); if (!g || g && 27 == b.keyCode) return 27 == b.which && f.find(e).focus(), d.click(); var h = " li:not(.divider):visible a", i = f.find("[role=menu]" + h + ", [role=listbox]" + h); if (i.length) { var j = i.index(i.filter(":focus")); 38 == b.keyCode && j > 0 && j-- , 40 == b.keyCode && j < i.length - 1 && j++ , ~j || (j = 0), i.eq(j).focus() } } } }; var g = a.fn.dropdown; a.fn.dropdown = function (b) { return this.each(function () { var c = a(this), d = c.data("bs.dropdown"); d || c.data("bs.dropdown", d = new f(this)), "string" == typeof b && d[b].call(c) }) }, a.fn.dropdown.Constructor = f, a.fn.dropdown.noConflict = function () { return a.fn.dropdown = g, this }, a(document).on("click.bs.dropdown.data-api", b).on("click.bs.dropdown.data-api", ".dropdown form", function (a) { a.stopPropagation() }).on("click.bs.dropdown.data-api", e, f.prototype.toggle).on("keydown.bs.dropdown.data-api", e + ", [role=menu], [role=listbox]", f.prototype.keydown) }(jQuery), +function (a) { "use strict"; var b = function (b, c) { this.options = c, this.$element = a(b), this.$backdrop = this.isShown = null, this.options.remote && this.$element.find(".modal-content").load(this.options.remote, a.proxy(function () { this.$element.trigger("loaded.bs.modal") }, this)) }; b.DEFAULTS = { backdrop: !0, keyboard: !0, show: !0 }, b.prototype.toggle = function (a) { return this[this.isShown ? "hide" : "show"](a) }, b.prototype.show = function (b) { var c = this, d = a.Event("show.bs.modal", { relatedTarget: b }); this.$element.trigger(d), this.isShown || d.isDefaultPrevented() || (this.isShown = !0, this.escape(), this.$element.on("click.dismiss.bs.modal", '[data-dismiss="modal"]', a.proxy(this.hide, this)), this.backdrop(function () { var d = a.support.transition && c.$element.hasClass("fade"); c.$element.parent().length || c.$element.appendTo(document.body), c.$element.show().scrollTop(0), d && c.$element[0].offsetWidth, c.$element.addClass("in").attr("aria-hidden", !1), c.enforceFocus(); var e = a.Event("shown.bs.modal", { relatedTarget: b }); d ? c.$element.find(".modal-dialog").one(a.support.transition.end, function () { c.$element.focus().trigger(e) }).emulateTransitionEnd(300) : c.$element.focus().trigger(e) })) }, b.prototype.hide = function (b) { b && b.preventDefault(), b = a.Event("hide.bs.modal"), this.$element.trigger(b), this.isShown && !b.isDefaultPrevented() && (this.isShown = !1, this.escape(), a(document).off("focusin.bs.modal"), this.$element.removeClass("in").attr("aria-hidden", !0).off("click.dismiss.bs.modal"), a.support.transition && this.$element.hasClass("fade") ? this.$element.one(a.support.transition.end, a.proxy(this.hideModal, this)).emulateTransitionEnd(300) : this.hideModal()) }, b.prototype.enforceFocus = function () { a(document).off("focusin.bs.modal").on("focusin.bs.modal", a.proxy(function (a) { this.$element[0] === a.target || this.$element.has(a.target).length || this.$element.focus() }, this)) }, b.prototype.escape = function () { this.isShown && this.options.keyboard ? this.$element.on("keyup.dismiss.bs.modal", a.proxy(function (a) { 27 == a.which && this.hide() }, this)) : this.isShown || this.$element.off("keyup.dismiss.bs.modal") }, b.prototype.hideModal = function () { var a = this; this.$element.hide(), this.backdrop(function () { a.removeBackdrop(), a.$element.trigger("hidden.bs.modal") }) }, b.prototype.removeBackdrop = function () { this.$backdrop && this.$backdrop.remove(), this.$backdrop = null }, b.prototype.backdrop = function (b) { var c = this.$element.hasClass("fade") ? "fade" : ""; if (this.isShown && this.options.backdrop) { var d = a.support.transition && c; if (this.$backdrop = a('<div class="modal-backdrop ' + c + '" />').appendTo(document.body), this.$element.on("click.dismiss.bs.modal", a.proxy(function (a) { a.target === a.currentTarget && ("static" == this.options.backdrop ? this.$element[0].focus.call(this.$element[0]) : this.hide.call(this)) }, this)), d && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !b) return; d ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b() } else !this.isShown && this.$backdrop ? (this.$backdrop.removeClass("in"), a.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b()) : b && b() }; var c = a.fn.modal; a.fn.modal = function (c, d) { return this.each(function () { var e = a(this), f = e.data("bs.modal"), g = a.extend({}, b.DEFAULTS, e.data(), "object" == typeof c && c); f || e.data("bs.modal", f = new b(this, g)), "string" == typeof c ? f[c](d) : g.show && f.show(d) }) }, a.fn.modal.Constructor = b, a.fn.modal.noConflict = function () { return a.fn.modal = c, this }, a(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function (b) { var c = a(this), d = c.attr("href"), e = a(c.attr("data-target") || d && d.replace(/.*(?=#[^\s]+$)/, "")), f = e.data("bs.modal") ? "toggle" : a.extend({ remote: !/#/.test(d) && d }, e.data(), c.data()); c.is("a") && b.preventDefault(), e.modal(f, this).one("hide", function () { c.is(":visible") && c.focus() }) }), a(document).on("show.bs.modal", ".modal", function () { a(document.body).addClass("modal-open") }).on("hidden.bs.modal", ".modal", function () { a(document.body).removeClass("modal-open") }) }(jQuery), +function (a) { "use strict"; var b = function (a, b) { this.type = this.options = this.enabled = this.timeout = this.hoverState = this.$element = null, this.init("tooltip", a, b) }; b.DEFAULTS = { animation: !0, placement: "top", selector: !1, template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', trigger: "hover focus", title: "", delay: 0, html: !1, container: !1 }, b.prototype.init = function (b, c, d) { this.enabled = !0, this.type = b, this.$element = a(c), this.options = this.getOptions(d); for (var e = this.options.trigger.split(" "), f = e.length; f--;) { var g = e[f]; if ("click" == g) this.$element.on("click." + this.type, this.options.selector, a.proxy(this.toggle, this)); else if ("manual" != g) { var h = "hover" == g ? "mouseenter" : "focusin", i = "hover" == g ? "mouseleave" : "focusout"; this.$element.on(h + "." + this.type, this.options.selector, a.proxy(this.enter, this)), this.$element.on(i + "." + this.type, this.options.selector, a.proxy(this.leave, this)) } } this.options.selector ? this._options = a.extend({}, this.options, { trigger: "manual", selector: "" }) : this.fixTitle() }, b.prototype.getDefaults = function () { return b.DEFAULTS }, b.prototype.getOptions = function (b) { return b = a.extend({}, this.getDefaults(), this.$element.data(), b), b.delay && "number" == typeof b.delay && (b.delay = { show: b.delay, hide: b.delay }), b }, b.prototype.getDelegateOptions = function () { var b = {}, c = this.getDefaults(); return this._options && a.each(this._options, function (a, d) { c[a] != d && (b[a] = d) }), b }, b.prototype.enter = function (b) { var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type); return clearTimeout(c.timeout), c.hoverState = "in", c.options.delay && c.options.delay.show ? void (c.timeout = setTimeout(function () { "in" == c.hoverState && c.show() }, c.options.delay.show)) : c.show() }, b.prototype.leave = function (b) { var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type); return clearTimeout(c.timeout), c.hoverState = "out", c.options.delay && c.options.delay.hide ? void (c.timeout = setTimeout(function () { "out" == c.hoverState && c.hide() }, c.options.delay.hide)) : c.hide() }, b.prototype.show = function () { var b = a.Event("show.bs." + this.type); if (this.hasContent() && this.enabled) { if (this.$element.trigger(b), b.isDefaultPrevented()) return; var c = this, d = this.tip(); this.setContent(), this.options.animation && d.addClass("fade"); var e = "function" == typeof this.options.placement ? this.options.placement.call(this, d[0], this.$element[0]) : this.options.placement, f = /\s?auto?\s?/i, g = f.test(e); g && (e = e.replace(f, "") || "top"), d.detach().css({ top: 0, left: 0, display: "block" }).addClass(e), this.options.container ? d.appendTo(this.options.container) : d.insertAfter(this.$element); var h = this.getPosition(), i = d[0].offsetWidth, j = d[0].offsetHeight; if (g) { var k = this.$element.parent(), l = e, m = document.documentElement.scrollTop || document.body.scrollTop, n = "body" == this.options.container ? window.innerWidth : k.outerWidth(), o = "body" == this.options.container ? window.innerHeight : k.outerHeight(), p = "body" == this.options.container ? 0 : k.offset().left; e = "bottom" == e && h.top + h.height + j - m > o ? "top" : "top" == e && h.top - m - j < 0 ? "bottom" : "right" == e && h.right + i > n ? "left" : "left" == e && h.left - i < p ? "right" : e, d.removeClass(l).addClass(e) } var q = this.getCalculatedOffset(e, h, i, j); this.applyPlacement(q, e), this.hoverState = null; var r = function () { c.$element.trigger("shown.bs." + c.type) }; a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, r).emulateTransitionEnd(150) : r() } }, b.prototype.applyPlacement = function (b, c) { var d, e = this.tip(), f = e[0].offsetWidth, g = e[0].offsetHeight, h = parseInt(e.css("margin-top"), 10), i = parseInt(e.css("margin-left"), 10); isNaN(h) && (h = 0), isNaN(i) && (i = 0), b.top = b.top + h, b.left = b.left + i, a.offset.setOffset(e[0], a.extend({ using: function (a) { e.css({ top: Math.round(a.top), left: Math.round(a.left) }) } }, b), 0), e.addClass("in"); var j = e[0].offsetWidth, k = e[0].offsetHeight; if ("top" == c && k != g && (d = !0, b.top = b.top + g - k), /bottom|top/.test(c)) { var l = 0; b.left < 0 && (l = -2 * b.left, b.left = 0, e.offset(b), j = e[0].offsetWidth, k = e[0].offsetHeight), this.replaceArrow(l - f + j, j, "left") } else this.replaceArrow(k - g, k, "top"); d && e.offset(b) }, b.prototype.replaceArrow = function (a, b, c) { this.arrow().css(c, a ? 50 * (1 - a / b) + "%" : "") }, b.prototype.setContent = function () { var a = this.tip(), b = this.getTitle(); a.find(".tooltip-inner")[this.options.html ? "html" : "text"](b), a.removeClass("fade in top bottom left right") }, b.prototype.hide = function () { function b() { "in" != c.hoverState && d.detach(), c.$element.trigger("hidden.bs." + c.type) } var c = this, d = this.tip(), e = a.Event("hide.bs." + this.type); return this.$element.trigger(e), e.isDefaultPrevented() ? void 0 : (d.removeClass("in"), a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, b).emulateTransitionEnd(150) : b(), this.hoverState = null, this) }, b.prototype.fixTitle = function () { var a = this.$element; (a.attr("title") || "string" != typeof a.attr("data-original-title")) && a.attr("data-original-title", a.attr("title") || "").attr("title", "") }, b.prototype.hasContent = function () { return this.getTitle() }, b.prototype.getPosition = function () { var b = this.$element[0]; return a.extend({}, "function" == typeof b.getBoundingClientRect ? b.getBoundingClientRect() : { width: b.offsetWidth, height: b.offsetHeight }, this.$element.offset()) }, b.prototype.getCalculatedOffset = function (a, b, c, d) { return "bottom" == a ? { top: b.top + b.height, left: b.left + b.width / 2 - c / 2 } : "top" == a ? { top: b.top - d, left: b.left + b.width / 2 - c / 2 } : "left" == a ? { top: b.top + b.height / 2 - d / 2, left: b.left - c } : { top: b.top + b.height / 2 - d / 2, left: b.left + b.width } }, b.prototype.getTitle = function () { var a, b = this.$element, c = this.options; return a = b.attr("data-original-title") || ("function" == typeof c.title ? c.title.call(b[0]) : c.title) }, b.prototype.tip = function () { return this.$tip = this.$tip || a(this.options.template) }, b.prototype.arrow = function () { return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow") }, b.prototype.validate = function () { this.$element[0].parentNode || (this.hide(), this.$element = null, this.options = null) }, b.prototype.enable = function () { this.enabled = !0 }, b.prototype.disable = function () { this.enabled = !1 }, b.prototype.toggleEnabled = function () { this.enabled = !this.enabled }, b.prototype.toggle = function (b) { var c = b ? a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type) : this; c.tip().hasClass("in") ? c.leave(c) : c.enter(c) }, b.prototype.destroy = function () { clearTimeout(this.timeout), this.hide().$element.off("." + this.type).removeData("bs." + this.type) }; var c = a.fn.tooltip; a.fn.tooltip = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.tooltip"), f = "object" == typeof c && c; (e || "destroy" != c) && (e || d.data("bs.tooltip", e = new b(this, f)), "string" == typeof c && e[c]()) }) }, a.fn.tooltip.Constructor = b, a.fn.tooltip.noConflict = function () { return a.fn.tooltip = c, this } }(jQuery), +function (a) { "use strict"; var b = function (a, b) { this.init("popover", a, b) }; if (!a.fn.tooltip) throw new Error("Popover requires tooltip.js"); b.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, { placement: "right", trigger: "click", content: "", template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' }), b.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype), b.prototype.constructor = b, b.prototype.getDefaults = function () { return b.DEFAULTS }, b.prototype.setContent = function () { var a = this.tip(), b = this.getTitle(), c = this.getContent(); a.find(".popover-title")[this.options.html ? "html" : "text"](b), a.find(".popover-content")[this.options.html ? "string" == typeof c ? "html" : "append" : "text"](c), a.removeClass("fade top bottom left right in"), a.find(".popover-title").html() || a.find(".popover-title").hide() }, b.prototype.hasContent = function () { return this.getTitle() || this.getContent() }, b.prototype.getContent = function () { var a = this.$element, b = this.options; return a.attr("data-content") || ("function" == typeof b.content ? b.content.call(a[0]) : b.content) }, b.prototype.arrow = function () { return this.$arrow = this.$arrow || this.tip().find(".arrow") }, b.prototype.tip = function () { return this.$tip || (this.$tip = a(this.options.template)), this.$tip }; var c = a.fn.popover; a.fn.popover = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.popover"), f = "object" == typeof c && c; (e || "destroy" != c) && (e || d.data("bs.popover", e = new b(this, f)), "string" == typeof c && e[c]()) }) }, a.fn.popover.Constructor = b, a.fn.popover.noConflict = function () { return a.fn.popover = c, this } }(jQuery), +function (a) { "use strict"; function b(c, d) { var e, f = a.proxy(this.process, this); this.$element = a(a(c).is("body") ? window : c), this.$body = a("body"), this.$scrollElement = this.$element.on("scroll.bs.scroll-spy.data-api", f), this.options = a.extend({}, b.DEFAULTS, d), this.selector = (this.options.target || (e = a(c).attr("href")) && e.replace(/.*(?=#[^\s]+$)/, "") || "") + " .nav li > a", this.offsets = a([]), this.targets = a([]), this.activeTarget = null, this.refresh(), this.process() } b.DEFAULTS = { offset: 10 }, b.prototype.refresh = function () { var b = this.$element[0] == window ? "offset" : "position"; this.offsets = a([]), this.targets = a([]); { var c = this; this.$body.find(this.selector).map(function () { var d = a(this), e = d.data("target") || d.attr("href"), f = /^#./.test(e) && a(e); return f && f.length && f.is(":visible") && [[f[b]().top + (!a.isWindow(c.$scrollElement.get(0)) && c.$scrollElement.scrollTop()), e]] || null }).sort(function (a, b) { return a[0] - b[0] }).each(function () { c.offsets.push(this[0]), c.targets.push(this[1]) }) } }, b.prototype.process = function () { var a, b = this.$scrollElement.scrollTop() + this.options.offset, c = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight, d = c - this.$scrollElement.height(), e = this.offsets, f = this.targets, g = this.activeTarget; if (b >= d) return g != (a = f.last()[0]) && this.activate(a); if (g && b <= e[0]) return g != (a = f[0]) && this.activate(a); for (a = e.length; a--;)g != f[a] && b >= e[a] && (!e[a + 1] || b <= e[a + 1]) && this.activate(f[a]) }, b.prototype.activate = function (b) { this.activeTarget = b, a(this.selector).parentsUntil(this.options.target, ".active").removeClass("active"); var c = this.selector + '[data-target="' + b + '"],' + this.selector + '[href="' + b + '"]', d = a(c).parents("li").addClass("active"); d.parent(".dropdown-menu").length && (d = d.closest("li.dropdown").addClass("active")), d.trigger("activate.bs.scrollspy") }; var c = a.fn.scrollspy; a.fn.scrollspy = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.scrollspy"), f = "object" == typeof c && c; e || d.data("bs.scrollspy", e = new b(this, f)), "string" == typeof c && e[c]() }) }, a.fn.scrollspy.Constructor = b, a.fn.scrollspy.noConflict = function () { return a.fn.scrollspy = c, this }, a(window).on("load", function () { a('[data-spy="scroll"]').each(function () { var b = a(this); b.scrollspy(b.data()) }) }) }(jQuery), +function (a) { "use strict"; var b = function (b) { this.element = a(b) }; b.prototype.show = function () { var b = this.element, c = b.closest("ul:not(.dropdown-menu)"), d = b.data("target"); if (d || (d = b.attr("href"), d = d && d.replace(/.*(?=#[^\s]*$)/, "")), !b.parent("li").hasClass("active")) { var e = c.find(".active:last a")[0], f = a.Event("show.bs.tab", { relatedTarget: e }); if (b.trigger(f), !f.isDefaultPrevented()) { var g = a(d); this.activate(b.parent("li"), c), this.activate(g, g.parent(), function () { b.trigger({ type: "shown.bs.tab", relatedTarget: e }) }) } } }, b.prototype.activate = function (b, c, d) { function e() { f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"), b.addClass("active"), g ? (b[0].offsetWidth, b.addClass("in")) : b.removeClass("fade"), b.parent(".dropdown-menu") && b.closest("li.dropdown").addClass("active"), d && d() } var f = c.find("> .active"), g = d && a.support.transition && f.hasClass("fade"); g ? f.one(a.support.transition.end, e).emulateTransitionEnd(150) : e(), f.removeClass("in") }; var c = a.fn.tab; a.fn.tab = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.tab"); e || d.data("bs.tab", e = new b(this)), "string" == typeof c && e[c]() }) }, a.fn.tab.Constructor = b, a.fn.tab.noConflict = function () { return a.fn.tab = c, this }, a(document).on("click.bs.tab.data-api", '[data-toggle="tab"], [data-toggle="pill"]', function (b) { b.preventDefault(), a(this).tab("show") }) }(jQuery), +function (a) { "use strict"; var b = function (c, d) { this.options = a.extend({}, b.DEFAULTS, d), this.$window = a(window).on("scroll.bs.affix.data-api", a.proxy(this.checkPosition, this)).on("click.bs.affix.data-api", a.proxy(this.checkPositionWithEventLoop, this)), this.$element = a(c), this.affixed = this.unpin = this.pinnedOffset = null, this.checkPosition() }; b.RESET = "affix affix-top affix-bottom", b.DEFAULTS = { offset: 0 }, b.prototype.getPinnedOffset = function () { if (this.pinnedOffset) return this.pinnedOffset; this.$element.removeClass(b.RESET).addClass("affix"); var a = this.$window.scrollTop(), c = this.$element.offset(); return this.pinnedOffset = c.top - a }, b.prototype.checkPositionWithEventLoop = function () { setTimeout(a.proxy(this.checkPosition, this), 1) }, b.prototype.checkPosition = function () { if (this.$element.is(":visible")) { var c = a(document).height(), d = this.$window.scrollTop(), e = this.$element.offset(), f = this.options.offset, g = f.top, h = f.bottom; "top" == this.affixed && (e.top += d), "object" != typeof f && (h = g = f), "function" == typeof g && (g = f.top(this.$element)), "function" == typeof h && (h = f.bottom(this.$element)); var i = null != this.unpin && d + this.unpin <= e.top ? !1 : null != h && e.top + this.$element.height() >= c - h ? "bottom" : null != g && g >= d ? "top" : !1; if (this.affixed !== i) { this.unpin && this.$element.css("top", ""); var j = "affix" + (i ? "-" + i : ""), k = a.Event(j + ".bs.affix"); this.$element.trigger(k), k.isDefaultPrevented() || (this.affixed = i, this.unpin = "bottom" == i ? this.getPinnedOffset() : null, this.$element.removeClass(b.RESET).addClass(j).trigger(a.Event(j.replace("affix", "affixed"))), "bottom" == i && this.$element.offset({ top: c - h - this.$element.height() })) } } }; var c = a.fn.affix; a.fn.affix = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.affix"), f = "object" == typeof c && c; e || d.data("bs.affix", e = new b(this, f)), "string" == typeof c && e[c]() }) }, a.fn.affix.Constructor = b, a.fn.affix.noConflict = function () { return a.fn.affix = c, this }, a(window).on("load", function () { a('[data-spy="affix"]').each(function () { var b = a(this), c = b.data(); c.offset = c.offset || {}, c.offsetBottom && (c.offset.bottom = c.offsetBottom), c.offsetTop && (c.offset.top = c.offsetTop), b.affix(c) }) }) }(jQuery);
20
- // jquery.tablesorter
21
- /*!
22
- * TableSorter 2.17.7 min - Client-side table sorting with ease!
23
- * Copyright (c) 2007 Christian Bach
24
- */
25
- !function (h) { h.extend({ tablesorter: new function () { function d() { var a = arguments[0], b = 1 < arguments.length ? Array.prototype.slice.call(arguments) : a; if ("undefined" !== typeof console && "undefined" !== typeof console.log) console[/error/i.test(a) ? "error" : /warn/i.test(a) ? "warn" : "log"](b); else alert(b) } function q(a, b) { d(a + " (" + ((new Date).getTime() - b.getTime()) + "ms)") } function n(a) { for (var b in a) return !1; return !0 } function r(a, b, c) { if (!b) return ""; var g, e = a.config, l = e.textExtraction || "", d = "", d = "basic" === l ? h(b).attr(e.textAttribute) || b.textContent || b.innerText || h(b).text() || "" : "function" === typeof l ? l(b, a, c) : "function" === typeof (g = f.getColumnData(a, l, c)) ? g(b, a, c) : b.textContent || b.innerText || h(b).text() || ""; return h.trim(d) } function v(a) { var b, c, g = a.config, e = g.$tbodies = g.$table.children("tbody:not(." + g.cssInfoBlock + ")"), l, x, k, h, m, B, u, s, t, n = 0, v = "", w = e.length; if (0 === w) return g.debug ? d("Warning: *Empty table!* Not building a parser cache") : ""; g.debug && (t = new Date, d("Detecting parsers for each column")); b = []; for (c = []; n < w;) { l = e[n].rows; if (l[n]) for (x = g.columns, k = 0; k < x; k++) { h = g.$headers.filter('[data-column="' + k + '"]:last'); m = f.getColumnData(a, g.headers, k); s = f.getParserById(f.getData(h, m, "extractor")); u = f.getParserById(f.getData(h, m, "sorter")); B = "false" === f.getData(h, m, "parser"); g.empties[k] = f.getData(h, m, "empty") || g.emptyTo || (g.emptyToBottom ? "bottom" : "top"); g.strings[k] = f.getData(h, m, "string") || g.stringTo || "max"; B && (u = f.getParserById("no-parser")); s || (s = !1); if (!u) a: { h = a; m = l; B = -1; u = k; for (var A = void 0, K = f.parsers.length, H = !1, z = "", A = !0; "" === z && A;)B++ , m[B] ? (H = m[B].cells[u], z = r(h, H, u), h.config.debug && d("Checking if value was empty on row " + B + ", column: " + u + ': "' + z + '"')) : A = !1; for (; 0 <= --K;)if ((A = f.parsers[K]) && "text" !== A.id && A.is && A.is(z, h, H)) { u = A; break a } u = f.getParserById("text") } g.debug && (v += "column:" + k + "; extractor:" + s.id + "; parser:" + u.id + "; string:" + g.strings[k] + "; empty: " + g.empties[k] + "\n"); c[k] = u; b[k] = s } n += c.length ? w : 1 } g.debug && (d(v ? v : "No parsers detected"), q("Completed detecting parsers", t)); g.parsers = c; g.extractors = b } function w(a) { var b, c, g, e, l, x, k, p, m, n, u, s = a.config, t = s.$table.children("tbody"), v = s.extractors, w = s.parsers; s.cache = {}; s.totalRows = 0; if (!w) return s.debug ? d("Warning: *Empty table!* Not building a cache") : ""; s.debug && (p = new Date); s.showProcessing && f.isProcessing(a, !0); for (l = 0; l < t.length; l++)if (u = [], b = s.cache[l] = { normalized: [] }, !t.eq(l).hasClass(s.cssInfoBlock)) { m = t[l] && t[l].rows.length || 0; for (g = 0; g < m; ++g)if (n = { child: [] }, x = h(t[l].rows[g]), k = [], x.hasClass(s.cssChildRow) && 0 !== g) c = b.normalized.length - 1, b.normalized[c][s.columns].$row = b.normalized[c][s.columns].$row.add(x), x.prev().hasClass(s.cssChildRow) || x.prev().addClass(f.css.cssHasChild), n.child[c] = h.trim(x[0].textContent || x[0].innerText || x.text() || ""); else { n.$row = x; n.order = g; for (e = 0; e < s.columns; ++e)"undefined" === typeof w[e] ? s.debug && d("No parser found for cell:", x[0].cells[e], "does it have a header?") : (c = r(a, x[0].cells[e], e), c = "undefined" === typeof v[e].id ? c : v[e].format(c, a, x[0].cells[e], e), c = "no-parser" === w[e].id ? "" : w[e].format(c, a, x[0].cells[e], e), k.push(s.ignoreCase && "string" === typeof c ? c.toLowerCase() : c), "numeric" === (w[e].type || "").toLowerCase() && (u[e] = Math.max(Math.abs(c) || 0, u[e] || 0))); k[s.columns] = n; b.normalized.push(k) } b.colMax = u; s.totalRows += b.normalized.length } s.showProcessing && f.isProcessing(a); s.debug && q("Building cache for " + m + " rows", p) } function z(a, b) { var c = a.config, g = c.widgetOptions, e = a.tBodies, l = [], d = c.cache, k, p, m, r, u, s; if (n(d)) return c.appender ? c.appender(a, l) : a.isUpdating ? c.$table.trigger("updateComplete", a) : ""; c.debug && (s = new Date); for (u = 0; u < e.length; u++)if (k = h(e[u]), k.length && !k.hasClass(c.cssInfoBlock)) { m = f.processTbody(a, k, !0); k = d[u].normalized; p = k.length; for (r = 0; r < p; r++)l.push(k[r][c.columns].$row), c.appender && (!c.pager || c.pager.removeRows && g.pager_removeRows || c.pager.ajax) || m.append(k[r][c.columns].$row); f.processTbody(a, m, !1) } c.appender && c.appender(a, l); c.debug && q("Rebuilt table", s); b || c.appender || f.applyWidget(a); a.isUpdating && c.$table.trigger("updateComplete", a) } function D(a) { return /^d/i.test(a) || 1 === a } function E(a) { var b, c, g, e, l, x, k, p = a.config; p.headerList = []; p.headerContent = []; p.debug && (k = new Date); p.columns = f.computeColumnIndex(p.$table.children("thead, tfoot").children("tr")); e = p.cssIcon ? '<i class="' + (p.cssIcon === f.css.icon ? f.css.icon : p.cssIcon + " " + f.css.icon) + '"></i>' : ""; p.$headers = h(a).find(p.selectorHeaders).each(function (k) { c = h(this); b = f.getColumnData(a, p.headers, k, !0); p.headerContent[k] = h(this).html(); l = p.headerTemplate.replace(/\{content\}/g, h(this).html()).replace(/\{icon\}/g, e); p.onRenderTemplate && (g = p.onRenderTemplate.apply(c, [k, l])) && "string" === typeof g && (l = g); h(this).html('<div class="' + f.css.headerIn + '">' + l + "</div>"); p.onRenderHeader && p.onRenderHeader.apply(c, [k]); this.column = parseInt(h(this).attr("data-column"), 10); this.order = D(f.getData(c, b, "sortInitialOrder") || p.sortInitialOrder) ? [1, 0, 2] : [0, 1, 2]; this.count = -1; this.lockedOrder = !1; x = f.getData(c, b, "lockedOrder") || !1; "undefined" !== typeof x && !1 !== x && (this.order = this.lockedOrder = D(x) ? [1, 1, 1] : [0, 0, 0]); c.addClass(f.css.header + " " + p.cssHeader); p.headerList[k] = this; c.parent().addClass(f.css.headerRow + " " + p.cssHeaderRow).attr("role", "row"); p.tabIndex && c.attr("tabindex", 0) }).attr({ scope: "col", role: "columnheader" }); C(a); p.debug && (q("Built headers:", k), d(p.$headers)) } function F(a, b, c) { var g = a.config; g.$table.find(g.selectorRemove).remove(); v(a); w(a); I(g.$table, b, c) } function C(a) { var b, c, g, e = a.config; e.$headers.each(function (l, d) { c = h(d); g = f.getColumnData(a, e.headers, l, !0); b = "false" === f.getData(d, g, "sorter") || "false" === f.getData(d, g, "parser"); d.sortDisabled = b; c[b ? "addClass" : "removeClass"]("sorter-false").attr("aria-disabled", "" + b); a.id && (b ? c.removeAttr("aria-controls") : c.attr("aria-controls", a.id)) }) } function G(a) { var b, c, g = a.config, e = g.sortList, l = e.length, d = f.css.sortNone + " " + g.cssNone, k = [f.css.sortAsc + " " + g.cssAsc, f.css.sortDesc + " " + g.cssDesc], p = ["ascending", "descending"], m = h(a).find("tfoot tr").children().add(g.$extraHeaders).removeClass(k.join(" ")); g.$headers.removeClass(k.join(" ")).addClass(d).attr("aria-sort", "none"); for (b = 0; b < l; b++)if (2 !== e[b][1] && (a = g.$headers.not(".sorter-false").filter('[data-column="' + e[b][0] + '"]' + (1 === l ? ":last" : "")), a.length)) { for (c = 0; c < a.length; c++)a[c].sortDisabled || a.eq(c).removeClass(d).addClass(k[e[b][1]]).attr("aria-sort", p[e[b][1]]); m.length && m.filter('[data-column="' + e[b][0] + '"]').removeClass(d).addClass(k[e[b][1]]) } g.$headers.not(".sorter-false").each(function () { var a = h(this), b = this.order[(this.count + 1) % (g.sortReset ? 3 : 2)], b = a.text() + ": " + f.language[a.hasClass(f.css.sortAsc) ? "sortAsc" : a.hasClass(f.css.sortDesc) ? "sortDesc" : "sortNone"] + f.language[0 === b ? "nextAsc" : 1 === b ? "nextDesc" : "nextNone"]; a.attr("aria-label", b) }) } function O(a) { if (a.config.widthFixed && 0 === h(a).find("colgroup").length) { var b = h("<colgroup>"), c = h(a).width(); h(a.tBodies[0]).find("tr:first").children(":visible").each(function () { b.append(h("<col>").css("width", parseInt(h(this).width() / c * 1E3, 10) / 10 + "%")) }); h(a).prepend(b) } } function P(a, b) { var c, g, e, l, f, k = a.config, d = b || k.sortList; k.sortList = []; h.each(d, function (a, b) { l = parseInt(b[0], 10); if (e = k.$headers.filter('[data-column="' + l + '"]:last')[0]) { g = (g = ("" + b[1]).match(/^(1|d|s|o|n)/)) ? g[0] : ""; switch (g) { case "1": case "d": g = 1; break; case "s": g = f || 0; break; case "o": c = e.order[(f || 0) % (k.sortReset ? 3 : 2)]; g = 0 === c ? 1 : 1 === c ? 0 : 2; break; case "n": e.count += 1; g = e.order[e.count % (k.sortReset ? 3 : 2)]; break; default: g = 0 }f = 0 === a ? g : f; c = [l, parseInt(g, 10) || 0]; k.sortList.push(c); g = h.inArray(c[1], e.order); e.count = 0 <= g ? g : c[1] % (k.sortReset ? 3 : 2) } }) } function Q(a, b) { return a && a[b] ? a[b].type || "" : "" } function L(a, b, c) { if (a.isUpdating) return setTimeout(function () { L(a, b, c) }, 50); var g, e, l, d, k = a.config, p = !c[k.sortMultiSortKey], m = k.$table; m.trigger("sortStart", a); b.count = c[k.sortResetKey] ? 2 : (b.count + 1) % (k.sortReset ? 3 : 2); k.sortRestart && (e = b, k.$headers.each(function () { this === e || !p && h(this).is("." + f.css.sortDesc + ",." + f.css.sortAsc) || (this.count = -1) })); e = b.column; if (p) { k.sortList = []; if (null !== k.sortForce) for (g = k.sortForce, l = 0; l < g.length; l++)g[l][0] !== e && k.sortList.push(g[l]); g = b.order[b.count]; if (2 > g && (k.sortList.push([e, g]), 1 < b.colSpan)) for (l = 1; l < b.colSpan; l++)k.sortList.push([e + l, g]) } else { if (k.sortAppend && 1 < k.sortList.length) for (l = 0; l < k.sortAppend.length; l++)d = f.isValueInArray(k.sortAppend[l][0], k.sortList), 0 <= d && k.sortList.splice(d, 1); if (0 <= f.isValueInArray(e, k.sortList)) for (l = 0; l < k.sortList.length; l++)d = k.sortList[l], g = k.$headers.filter('[data-column="' + d[0] + '"]:last')[0], d[0] === e && (d[1] = g.order[b.count], 2 === d[1] && (k.sortList.splice(l, 1), g.count = -1)); else if (g = b.order[b.count], 2 > g && (k.sortList.push([e, g]), 1 < b.colSpan)) for (l = 1; l < b.colSpan; l++)k.sortList.push([e + l, g]) } if (null !== k.sortAppend) for (g = k.sortAppend, l = 0; l < g.length; l++)g[l][0] !== e && k.sortList.push(g[l]); m.trigger("sortBegin", a); setTimeout(function () { G(a); J(a); z(a); m.trigger("sortEnd", a) }, 1) } function J(a) { var b, c, g, e, l, d, k, h, m, r, u, s = 0, t = a.config, v = t.textSorter || "", w = t.sortList, y = w.length, z = a.tBodies.length; if (!t.serverSideSorting && !n(t.cache)) { t.debug && (l = new Date); for (c = 0; c < z; c++)d = t.cache[c].colMax, k = t.cache[c].normalized, k.sort(function (c, l) { for (b = 0; b < y; b++) { e = w[b][0]; h = w[b][1]; s = 0 === h; if (t.sortStable && c[e] === l[e] && 1 === y) break; (g = /n/i.test(Q(t.parsers, e))) && t.strings[e] ? (g = "boolean" === typeof t.string[t.strings[e]] ? (s ? 1 : -1) * (t.string[t.strings[e]] ? -1 : 1) : t.strings[e] ? t.string[t.strings[e]] || 0 : 0, m = t.numberSorter ? t.numberSorter(c[e], l[e], s, d[e], a) : f["sortNumeric" + (s ? "Asc" : "Desc")](c[e], l[e], g, d[e], e, a)) : (r = s ? c : l, u = s ? l : c, m = "function" === typeof v ? v(r[e], u[e], s, e, a) : "object" === typeof v && v.hasOwnProperty(e) ? v[e](r[e], u[e], s, e, a) : f["sortNatural" + (s ? "Asc" : "Desc")](c[e], l[e], e, a, t)); if (m) return m } return c[t.columns].order - l[t.columns].order }); t.debug && q("Sorting on " + w.toString() + " and dir " + h + " time", l) } } function M(a, b) { a[0].isUpdating && a.trigger("updateComplete"); h.isFunction(b) && b(a[0]) } function I(a, b, c) { var g = a[0].config.sortList; !1 !== b && !a[0].isProcessing && g.length ? a.trigger("sorton", [g, function () { M(a, c) }, !0]) : (M(a, c), f.applyWidget(a[0], !1)) } function N(a) { var b = a.config, c = b.$table; c.unbind("sortReset update updateRows updateCell updateAll addRows updateComplete sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave ".split(" ").join(b.namespace + " ")).bind("sortReset" + b.namespace, function (g, e) { g.stopPropagation(); b.sortList = []; G(a); J(a); z(a); h.isFunction(e) && e(a) }).bind("updateAll" + b.namespace, function (g, e, c) { g.stopPropagation(); a.isUpdating = !0; f.refreshWidgets(a, !0, !0); f.restoreHeaders(a); E(a); f.bindEvents(a, b.$headers, !0); N(a); F(a, e, c) }).bind("update" + b.namespace + " updateRows" + b.namespace, function (b, e, c) { b.stopPropagation(); a.isUpdating = !0; C(a); F(a, e, c) }).bind("updateCell" + b.namespace, function (g, e, l, f) { g.stopPropagation(); a.isUpdating = !0; c.find(b.selectorRemove).remove(); var d, p, m; p = c.find("tbody"); m = h(e); g = p.index(h.fn.closest ? m.closest("tbody") : m.parents("tbody").filter(":first")); d = h.fn.closest ? m.closest("tr") : m.parents("tr").filter(":first"); e = m[0]; p.length && 0 <= g && (p = p.eq(g).find("tr").index(d), m = m.index(), b.cache[g].normalized[p][b.columns].$row = d, d = "undefined" === typeof b.extractors[m].id ? r(a, e, m) : b.extractors[m].format(r(a, e, m), a, e, m), e = "no-parser" === b.parsers[m].id ? "" : b.parsers[m].format(d, a, e, m), b.cache[g].normalized[p][m] = b.ignoreCase && "string" === typeof e ? e.toLowerCase() : e, "numeric" === (b.parsers[m].type || "").toLowerCase() && (b.cache[g].colMax[m] = Math.max(Math.abs(e) || 0, b.cache[g].colMax[m] || 0)), I(c, l, f)) }).bind("addRows" + b.namespace, function (g, e, l, f) { g.stopPropagation(); a.isUpdating = !0; if (n(b.cache)) C(a), F(a, l, f); else { e = h(e).attr("role", "row"); var d, p, m, q, u, s = e.filter("tr").length, t = c.find("tbody").index(e.parents("tbody").filter(":first")); b.parsers && b.parsers.length || v(a); for (g = 0; g < s; g++) { p = e[g].cells.length; u = []; q = { child: [], $row: e.eq(g), order: b.cache[t].normalized.length }; for (d = 0; d < p; d++)m = "undefined" === typeof b.extractors[d].id ? r(a, e[g].cells[d], d) : b.extractors[d].format(r(a, e[g].cells[d], d), a, e[g].cells[d], d), m = "no-parser" === b.parsers[d].id ? "" : b.parsers[d].format(m, a, e[g].cells[d], d), u[d] = b.ignoreCase && "string" === typeof m ? m.toLowerCase() : m, "numeric" === (b.parsers[d].type || "").toLowerCase() && (b.cache[t].colMax[d] = Math.max(Math.abs(u[d]) || 0, b.cache[t].colMax[d] || 0)); u.push(q); b.cache[t].normalized.push(u) } I(c, l, f) } }).bind("updateComplete" + b.namespace, function () { a.isUpdating = !1 }).bind("sorton" + b.namespace, function (b, e, d, x) { var k = a.config; b.stopPropagation(); c.trigger("sortStart", this); P(a, e); G(a); k.delayInit && n(k.cache) && w(a); c.trigger("sortBegin", this); J(a); z(a, x); c.trigger("sortEnd", this); f.applyWidget(a); h.isFunction(d) && d(a) }).bind("appendCache" + b.namespace, function (b, e, c) { b.stopPropagation(); z(a, c); h.isFunction(e) && e(a) }).bind("updateCache" + b.namespace, function (c, e) { b.parsers && b.parsers.length || v(a); w(a); h.isFunction(e) && e(a) }).bind("applyWidgetId" + b.namespace, function (c, e) { c.stopPropagation(); f.getWidgetById(e).format(a, b, b.widgetOptions) }).bind("applyWidgets" + b.namespace, function (b, e) { b.stopPropagation(); f.applyWidget(a, e) }).bind("refreshWidgets" + b.namespace, function (b, e, c) { b.stopPropagation(); f.refreshWidgets(a, e, c) }).bind("destroy" + b.namespace, function (b, e, c) { b.stopPropagation(); f.destroy(a, e, c) }).bind("resetToLoadState" + b.namespace, function () { f.refreshWidgets(a, !0, !0); b = h.extend(!0, f.defaults, b.originalSettings); a.hasInitialized = !1; f.setup(a, b) }) } var f = this; f.version = "2.17.7"; f.parsers = []; f.widgets = []; f.defaults = { theme: "default", widthFixed: !1, showProcessing: !1, headerTemplate: "{content}", onRenderTemplate: null, onRenderHeader: null, cancelSelection: !0, tabIndex: !0, dateFormat: "mmddyyyy", sortMultiSortKey: "shiftKey", sortResetKey: "ctrlKey", usNumberFormat: !0, delayInit: !1, serverSideSorting: !1, headers: {}, ignoreCase: !0, sortForce: null, sortList: [], sortAppend: null, sortStable: !1, sortInitialOrder: "asc", sortLocaleCompare: !1, sortReset: !1, sortRestart: !1, emptyTo: "bottom", stringTo: "max", textExtraction: "basic", textAttribute: "data-text", textSorter: null, numberSorter: null, widgets: [], widgetOptions: { zebra: ["even", "odd"] }, initWidgets: !0, initialized: null, tableClass: "", cssAsc: "", cssDesc: "", cssNone: "", cssHeader: "", cssHeaderRow: "", cssProcessing: "", cssChildRow: "tablesorter-childRow", cssIcon: "tablesorter-icon", cssInfoBlock: "tablesorter-infoOnly", selectorHeaders: "> thead th, > thead td", selectorSort: "th, td", selectorRemove: ".remove-me", debug: !1, headerList: [], empties: {}, strings: {}, parsers: [] }; f.css = { table: "tablesorter", cssHasChild: "tablesorter-hasChildRow", childRow: "tablesorter-childRow", header: "tablesorter-header", headerRow: "tablesorter-headerRow", headerIn: "tablesorter-header-inner", icon: "tablesorter-icon", info: "tablesorter-infoOnly", processing: "tablesorter-processing", sortAsc: "tablesorter-headerAsc", sortDesc: "tablesorter-headerDesc", sortNone: "tablesorter-headerUnSorted" }; f.language = { sortAsc: "Ascending sort applied, ", sortDesc: "Descending sort applied, ", sortNone: "No sort applied, ", nextAsc: "activate to apply an ascending sort", nextDesc: "activate to apply a descending sort", nextNone: "activate to remove the sort" }; f.log = d; f.benchmark = q; f.construct = function (a) { return this.each(function () { var b = h.extend(!0, {}, f.defaults, a); b.originalSettings = a; !this.hasInitialized && f.buildTable && "TABLE" !== this.tagName ? f.buildTable(this, b) : f.setup(this, b) }) }; f.setup = function (a, b) { if (!a || !a.tHead || 0 === a.tBodies.length || !0 === a.hasInitialized) return b.debug ? d("ERROR: stopping initialization! No table, thead, tbody or tablesorter has already been initialized") : ""; var c = "", g = h(a), e = h.metadata; a.hasInitialized = !1; a.isProcessing = !0; a.config = b; h.data(a, "tablesorter", b); b.debug && h.data(a, "startoveralltimer", new Date); b.supportsDataObject = function (a) { a[0] = parseInt(a[0], 10); return 1 < a[0] || 1 === a[0] && 4 <= parseInt(a[1], 10) }(h.fn.jquery.split(".")); b.string = { max: 1, min: -1, emptyMin: 1, emptyMax: -1, zero: 0, none: 0, "null": 0, top: !0, bottom: !1 }; /tablesorter\-/.test(g.attr("class")) || (c = "" !== b.theme ? " tablesorter-" + b.theme : ""); b.table = a; b.$table = g.addClass(f.css.table + " " + b.tableClass + c).attr("role", "grid"); b.$headers = g.find(b.selectorHeaders); b.namespace = b.namespace ? "." + b.namespace.replace(/\W/g, "") : ".tablesorter" + Math.random().toString(16).slice(2); b.$table.children().children("tr").attr("role", "row"); b.$tbodies = g.children("tbody:not(." + b.cssInfoBlock + ")").attr({ "aria-live": "polite", "aria-relevant": "all" }); b.$table.find("caption").length && b.$table.attr("aria-labelledby", "theCaption"); b.widgetInit = {}; b.textExtraction = b.$table.attr("data-text-extraction") || b.textExtraction || "basic"; E(a); O(a); v(a); b.totalRows = 0; b.delayInit || w(a); f.bindEvents(a, b.$headers, !0); N(a); b.supportsDataObject && "undefined" !== typeof g.data().sortlist ? b.sortList = g.data().sortlist : e && g.metadata() && g.metadata().sortlist && (b.sortList = g.metadata().sortlist); f.applyWidget(a, !0); 0 < b.sortList.length ? g.trigger("sorton", [b.sortList, {}, !b.initWidgets, !0]) : (G(a), b.initWidgets && f.applyWidget(a, !1)); b.showProcessing && g.unbind("sortBegin" + b.namespace + " sortEnd" + b.namespace).bind("sortBegin" + b.namespace + " sortEnd" + b.namespace, function (c) { clearTimeout(b.processTimer); f.isProcessing(a); "sortBegin" === c.type && (b.processTimer = setTimeout(function () { f.isProcessing(a, !0) }, 500)) }); a.hasInitialized = !0; a.isProcessing = !1; b.debug && f.benchmark("Overall initialization time", h.data(a, "startoveralltimer")); g.trigger("tablesorter-initialized", a); "function" === typeof b.initialized && b.initialized(a) }; f.getColumnData = function (a, b, c, g) { if ("undefined" !== typeof b && null !== b) { a = h(a)[0]; var e, d = a.config; if (b[c]) return g ? b[c] : b[d.$headers.index(d.$headers.filter('[data-column="' + c + '"]:last'))]; for (e in b) if ("string" === typeof e && (a = g ? d.$headers.eq(c).filter(e) : d.$headers.filter('[data-column="' + c + '"]:last').filter(e), a.length)) return b[e] } }; f.computeColumnIndex = function (a) { var b = [], c = 0, g, e, d, f, k, p, m, n, q, s; for (g = 0; g < a.length; g++)for (k = a[g].cells, e = 0; e < k.length; e++) { d = k[e]; f = h(d); p = d.parentNode.rowIndex; f.index(); m = d.rowSpan || 1; n = d.colSpan || 1; "undefined" === typeof b[p] && (b[p] = []); for (d = 0; d < b[p].length + 1; d++)if ("undefined" === typeof b[p][d]) { q = d; break } c = Math.max(q, c); f.attr({ "data-column": q }); for (d = p; d < p + m; d++)for ("undefined" === typeof b[d] && (b[d] = []), s = b[d], f = q; f < q + n; f++)s[f] = "x" } return c + 1 }; f.isProcessing = function (a, b, c) { a = h(a); var g = a[0].config, e = c || a.find("." + f.css.header); b ? ("undefined" !== typeof c && 0 < g.sortList.length && (e = e.filter(function () { return this.sortDisabled ? !1 : 0 <= f.isValueInArray(parseFloat(h(this).attr("data-column")), g.sortList) })), a.add(e).addClass(f.css.processing + " " + g.cssProcessing)) : a.add(e).removeClass(f.css.processing + " " + g.cssProcessing) }; f.processTbody = function (a, b, c) { a = h(a)[0]; if (c) return a.isProcessing = !0, b.before('<span class="tablesorter-savemyplace"/>'), c = h.fn.detach ? b.detach() : b.remove(); c = h(a).find("span.tablesorter-savemyplace"); b.insertAfter(c); c.remove(); a.isProcessing = !1 }; f.clearTableBody = function (a) { h(a)[0].config.$tbodies.children().detach() }; f.bindEvents = function (a, b, c) { a = h(a)[0]; var g, e = a.config; !0 !== c && (e.$extraHeaders = e.$extraHeaders ? e.$extraHeaders.add(b) : b); b.find(e.selectorSort).add(b.filter(e.selectorSort)).unbind(["mousedown", "mouseup", "sort", "keyup", ""].join(e.namespace + " ")).bind(["mousedown", "mouseup", "sort", "keyup", ""].join(e.namespace + " "), function (c, d) { var f; f = c.type; if (!(1 !== (c.which || c.button) && !/sort|keyup/.test(f) || "keyup" === f && 13 !== c.which || "mouseup" === f && !0 !== d && 250 < (new Date).getTime() - g)) { if ("mousedown" === f) return g = (new Date).getTime(), /(input|select|button|textarea)/i.test(c.target.tagName) ? "" : !e.cancelSelection; e.delayInit && n(e.cache) && w(a); f = h.fn.closest ? h(this).closest("th, td")[0] : /TH|TD/.test(this.tagName) ? this : h(this).parents("th, td")[0]; f = e.$headers[b.index(f)]; f.sortDisabled || L(a, f, c) } }); e.cancelSelection && b.attr("unselectable", "on").bind("selectstart", !1).css({ "user-select": "none", MozUserSelect: "none" }) }; f.restoreHeaders = function (a) { var b = h(a)[0].config; b.$table.find(b.selectorHeaders).each(function (a) { h(this).find("." + f.css.headerIn).length && h(this).html(b.headerContent[a]) }) }; f.destroy = function (a, b, c) { a = h(a)[0]; if (a.hasInitialized) { f.refreshWidgets(a, !0, !0); var g = h(a), e = a.config, d = g.find("thead:first"), q = d.find("tr." + f.css.headerRow).removeClass(f.css.headerRow + " " + e.cssHeaderRow), k = g.find("tfoot:first > tr").children("th, td"); !1 === b && 0 <= h.inArray("uitheme", e.widgets) && (g.trigger("applyWidgetId", ["uitheme"]), g.trigger("applyWidgetId", ["zebra"])); d.find("tr").not(q).remove(); g.removeData("tablesorter").unbind("sortReset update updateAll updateRows updateCell addRows updateComplete sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave keypress sortBegin sortEnd resetToLoadState ".split(" ").join(e.namespace + " ")); e.$headers.add(k).removeClass([f.css.header, e.cssHeader, e.cssAsc, e.cssDesc, f.css.sortAsc, f.css.sortDesc, f.css.sortNone].join(" ")).removeAttr("data-column").removeAttr("aria-label").attr("aria-disabled", "true"); q.find(e.selectorSort).unbind(["mousedown", "mouseup", "keypress", ""].join(e.namespace + " ")); f.restoreHeaders(a); g.toggleClass(f.css.table + " " + e.tableClass + " tablesorter-" + e.theme, !1 === b); a.hasInitialized = !1; delete a.config.cache; "function" === typeof c && c(a) } }; f.regex = { chunk: /(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi, chunks: /(^\\0|\\0$)/, hex: /^0x[0-9a-f]+$/i }; f.sortNatural = function (a, b) { if (a === b) return 0; var c, g, e, d, h, k; g = f.regex; if (g.hex.test(b)) { c = parseInt(a.match(g.hex), 16); e = parseInt(b.match(g.hex), 16); if (c < e) return -1; if (c > e) return 1 } c = a.replace(g.chunk, "\\0$1\\0").replace(g.chunks, "").split("\\0"); g = b.replace(g.chunk, "\\0$1\\0").replace(g.chunks, "").split("\\0"); k = Math.max(c.length, g.length); for (h = 0; h < k; h++) { e = isNaN(c[h]) ? c[h] || 0 : parseFloat(c[h]) || 0; d = isNaN(g[h]) ? g[h] || 0 : parseFloat(g[h]) || 0; if (isNaN(e) !== isNaN(d)) return isNaN(e) ? 1 : -1; typeof e !== typeof d && (e += "", d += ""); if (e < d) return -1; if (e > d) return 1 } return 0 }; f.sortNaturalAsc = function (a, b, c, g, e) { if (a === b) return 0; c = e.string[e.empties[c] || e.emptyTo]; return "" === a && 0 !== c ? "boolean" === typeof c ? c ? -1 : 1 : -c || -1 : "" === b && 0 !== c ? "boolean" === typeof c ? c ? 1 : -1 : c || 1 : f.sortNatural(a, b) }; f.sortNaturalDesc = function (a, b, c, g, e) { if (a === b) return 0; c = e.string[e.empties[c] || e.emptyTo]; return "" === a && 0 !== c ? "boolean" === typeof c ? c ? -1 : 1 : c || 1 : "" === b && 0 !== c ? "boolean" === typeof c ? c ? 1 : -1 : -c || -1 : f.sortNatural(b, a) }; f.sortText = function (a, b) { return a > b ? 1 : a < b ? -1 : 0 }; f.getTextValue = function (a, b, c) { if (c) { var g = a ? a.length : 0, e = c + b; for (c = 0; c < g; c++)e += a.charCodeAt(c); return b * e } return 0 }; f.sortNumericAsc = function (a, b, c, g, e, d) { if (a === b) return 0; d = d.config; e = d.string[d.empties[e] || d.emptyTo]; if ("" === a && 0 !== e) return "boolean" === typeof e ? e ? -1 : 1 : -e || -1; if ("" === b && 0 !== e) return "boolean" === typeof e ? e ? 1 : -1 : e || 1; isNaN(a) && (a = f.getTextValue(a, c, g)); isNaN(b) && (b = f.getTextValue(b, c, g)); return a - b }; f.sortNumericDesc = function (a, b, c, g, e, d) { if (a === b) return 0; d = d.config; e = d.string[d.empties[e] || d.emptyTo]; if ("" === a && 0 !== e) return "boolean" === typeof e ? e ? -1 : 1 : e || 1; if ("" === b && 0 !== e) return "boolean" === typeof e ? e ? 1 : -1 : -e || -1; isNaN(a) && (a = f.getTextValue(a, c, g)); isNaN(b) && (b = f.getTextValue(b, c, g)); return b - a }; f.sortNumeric = function (a, b) { return a - b }; f.characterEquivalents = { a: "\u00e1\u00e0\u00e2\u00e3\u00e4\u0105\u00e5", A: "\u00c1\u00c0\u00c2\u00c3\u00c4\u0104\u00c5", c: "\u00e7\u0107\u010d", C: "\u00c7\u0106\u010c", e: "\u00e9\u00e8\u00ea\u00eb\u011b\u0119", E: "\u00c9\u00c8\u00ca\u00cb\u011a\u0118", i: "\u00ed\u00ec\u0130\u00ee\u00ef\u0131", I: "\u00cd\u00cc\u0130\u00ce\u00cf", o: "\u00f3\u00f2\u00f4\u00f5\u00f6", O: "\u00d3\u00d2\u00d4\u00d5\u00d6", ss: "\u00df", SS: "\u1e9e", u: "\u00fa\u00f9\u00fb\u00fc\u016f", U: "\u00da\u00d9\u00db\u00dc\u016e" }; f.replaceAccents = function (a) { var b, c = "[", d = f.characterEquivalents; if (!f.characterRegex) { f.characterRegexArray = {}; for (b in d) "string" === typeof b && (c += d[b], f.characterRegexArray[b] = new RegExp("[" + d[b] + "]", "g")); f.characterRegex = new RegExp(c + "]") } if (f.characterRegex.test(a)) for (b in d) "string" === typeof b && (a = a.replace(f.characterRegexArray[b], b)); return a }; f.isValueInArray = function (a, b) { var c, d = b.length; for (c = 0; c < d; c++)if (b[c][0] === a) return c; return -1 }; f.addParser = function (a) { var b, c = f.parsers.length, d = !0; for (b = 0; b < c; b++)f.parsers[b].id.toLowerCase() === a.id.toLowerCase() && (d = !1); d && f.parsers.push(a) }; f.getParserById = function (a) { if ("false" == a) return !1; var b, c = f.parsers.length; for (b = 0; b < c; b++)if (f.parsers[b].id.toLowerCase() === a.toString().toLowerCase()) return f.parsers[b]; return !1 }; f.addWidget = function (a) { f.widgets.push(a) }; f.hasWidget = function (a, b) { a = h(a); return a.length && a[0].config && a[0].config.widgetInit[b] || !1 }; f.getWidgetById = function (a) { var b, c, d = f.widgets.length; for (b = 0; b < d; b++)if ((c = f.widgets[b]) && c.hasOwnProperty("id") && c.id.toLowerCase() === a.toLowerCase()) return c }; f.applyWidget = function (a, b) { a = h(a)[0]; var c = a.config, d = c.widgetOptions, e = [], l, n, k; !1 !== b && a.hasInitialized && (a.isApplyingWidgets || a.isUpdating) || (c.debug && (l = new Date), c.widgets.length && (a.isApplyingWidgets = !0, c.widgets = h.grep(c.widgets, function (a, b) { return h.inArray(a, c.widgets) === b }), h.each(c.widgets || [], function (a, b) { (k = f.getWidgetById(b)) && k.id && (k.priority || (k.priority = 10), e[a] = k) }), e.sort(function (a, b) { return a.priority < b.priority ? -1 : a.priority === b.priority ? 0 : 1 }), h.each(e, function (e, f) { if (f) { if (b || !c.widgetInit[f.id]) c.widgetInit[f.id] = !0, f.hasOwnProperty("options") && (d = a.config.widgetOptions = h.extend(!0, {}, f.options, d)), f.hasOwnProperty("init") && f.init(a, f, c, d); !b && f.hasOwnProperty("format") && f.format(a, c, d, !1) } })), setTimeout(function () { a.isApplyingWidgets = !1 }, 0), c.debug && (n = c.widgets.length, q("Completed " + (!0 === b ? "initializing " : "applying ") + n + " widget" + (1 !== n ? "s" : ""), l))) }; f.refreshWidgets = function (a, b, c) { a = h(a)[0]; var g, e = a.config, l = e.widgets, q = f.widgets, k = q.length; for (g = 0; g < k; g++)q[g] && q[g].id && (b || 0 > h.inArray(q[g].id, l)) && (e.debug && d('Refeshing widgets: Removing "' + q[g].id + '"'), q[g].hasOwnProperty("remove") && e.widgetInit[q[g].id] && (q[g].remove(a, e, e.widgetOptions), e.widgetInit[q[g].id] = !1)); !0 !== c && f.applyWidget(a, b) }; f.getData = function (a, b, c) { var d = ""; a = h(a); var e, f; if (!a.length) return ""; e = h.metadata ? a.metadata() : !1; f = " " + (a.attr("class") || ""); "undefined" !== typeof a.data(c) || "undefined" !== typeof a.data(c.toLowerCase()) ? d += a.data(c) || a.data(c.toLowerCase()) : e && "undefined" !== typeof e[c] ? d += e[c] : b && "undefined" !== typeof b[c] ? d += b[c] : " " !== f && f.match(" " + c + "-") && (d = f.match(new RegExp("\\s" + c + "-([\\w-]+)"))[1] || ""); return h.trim(d) }; f.formatFloat = function (a, b) { if ("string" !== typeof a || "" === a) return a; var c; a = (b && b.config ? !1 !== b.config.usNumberFormat : "undefined" !== typeof b ? b : 1) ? a.replace(/,/g, "") : a.replace(/[\s|\.]/g, "").replace(/,/g, "."); /^\s*\([.\d]+\)/.test(a) && (a = a.replace(/^\s*\(([.\d]+)\)/, "-$1")); c = parseFloat(a); return isNaN(c) ? h.trim(a) : c }; f.isDigit = function (a) { return isNaN(a) ? /^[\-+(]?\d+[)]?$/.test(a.toString().replace(/[,.'"\s]/g, "")) : !0 } } }); var r = h.tablesorter; h.fn.extend({ tablesorter: r.construct }); r.addParser({ id: "no-parser", is: function () { return !1 }, format: function () { return "" }, type: "text" }); r.addParser({ id: "text", is: function () { return !0 }, format: function (d, q) { var n = q.config; d && (d = h.trim(n.ignoreCase ? d.toLocaleLowerCase() : d), d = n.sortLocaleCompare ? r.replaceAccents(d) : d); return d }, type: "text" }); r.addParser({ id: "digit", is: function (d) { return r.isDigit(d) }, format: function (d, q) { var n = r.formatFloat((d || "").replace(/[^\w,. \-()]/g, ""), q); return d && "number" === typeof n ? n : d ? h.trim(d && q.config.ignoreCase ? d.toLocaleLowerCase() : d) : d }, type: "numeric" }); r.addParser({ id: "currency", is: function (d) { return /^\(?\d+[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]|[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]\d+\)?$/.test((d || "").replace(/[+\-,. ]/g, "")) }, format: function (d, q) { var n = r.formatFloat((d || "").replace(/[^\w,. \-()]/g, ""), q); return d && "number" === typeof n ? n : d ? h.trim(d && q.config.ignoreCase ? d.toLocaleLowerCase() : d) : d }, type: "numeric" }); r.addParser({ id: "ipAddress", is: function (d) { return /^\d{1,3}[\.]\d{1,3}[\.]\d{1,3}[\.]\d{1,3}$/.test(d) }, format: function (d, h) { var n, y = d ? d.split(".") : "", v = "", w = y.length; for (n = 0; n < w; n++)v += ("00" + y[n]).slice(-3); return d ? r.formatFloat(v, h) : d }, type: "numeric" }); r.addParser({ id: "url", is: function (d) { return /^(https?|ftp|file):\/\//.test(d) }, format: function (d) { return d ? h.trim(d.replace(/(https?|ftp|file):\/\//, "")) : d }, type: "text" }); r.addParser({ id: "isoDate", is: function (d) { return /^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}/.test(d) }, format: function (d, h) { return d ? r.formatFloat("" !== d ? (new Date(d.replace(/-/g, "/"))).getTime() || d : "", h) : d }, type: "numeric" }); r.addParser({ id: "percent", is: function (d) { return /(\d\s*?%|%\s*?\d)/.test(d) && 15 > d.length }, format: function (d, h) { return d ? r.formatFloat(d.replace(/%/g, ""), h) : d }, type: "numeric" }); r.addParser({ id: "usLongDate", is: function (d) { return /^[A-Z]{3,10}\.?\s+\d{1,2},?\s+(\d{4})(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?$/i.test(d) || /^\d{1,2}\s+[A-Z]{3,10}\s+\d{4}/i.test(d) }, format: function (d, h) { return d ? r.formatFloat((new Date(d.replace(/(\S)([AP]M)$/i, "$1 $2"))).getTime() || d, h) : d }, type: "numeric" }); r.addParser({ id: "shortDate", is: function (d) { return /(^\d{1,2}[\/\s]\d{1,2}[\/\s]\d{4})|(^\d{4}[\/\s]\d{1,2}[\/\s]\d{1,2})/.test((d || "").replace(/\s+/g, " ").replace(/[\-.,]/g, "/")) }, format: function (d, h, n, y) { if (d) { n = h.config; var v = n.$headers.filter("[data-column=" + y + "]:last"); y = v.length && v[0].dateFormat || r.getData(v, r.getColumnData(h, n.headers, y), "dateFormat") || n.dateFormat; d = d.replace(/\s+/g, " ").replace(/[\-.,]/g, "/"); "mmddyyyy" === y ? d = d.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/, "$3/$1/$2") : "ddmmyyyy" === y ? d = d.replace(/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/, "$3/$2/$1") : "yyyymmdd" === y && (d = d.replace(/(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/, "$1/$2/$3")) } return d ? r.formatFloat((new Date(d)).getTime() || d, h) : d }, type: "numeric" }); r.addParser({ id: "time", is: function (d) { return /^(([0-2]?\d:[0-5]\d)|([0-1]?\d:[0-5]\d\s?([AP]M)))$/i.test(d) }, format: function (d, h) { return d ? r.formatFloat((new Date("2000/01/01 " + d.replace(/(\S)([AP]M)$/i, "$1 $2"))).getTime() || d, h) : d }, type: "numeric" }); r.addParser({ id: "metadata", is: function () { return !1 }, format: function (d, q, n) { d = q.config; d = d.parserMetadataName ? d.parserMetadataName : "sortValue"; return h(n).metadata()[d] }, type: "numeric" }); r.addWidget({ id: "zebra", priority: 90, format: function (d, q, n) { var y, v, w, z, D, E, F = new RegExp(q.cssChildRow, "i"), C = q.$tbodies; q.debug && (D = new Date); for (d = 0; d < C.length; d++)y = C.eq(d), E = y.children("tr").length, 1 < E && (w = 0, y = y.children("tr:visible").not(q.selectorRemove), y.each(function () { v = h(this); F.test(this.className) || w++; z = 0 === w % 2; v.removeClass(n.zebra[z ? 1 : 0]).addClass(n.zebra[z ? 0 : 1]) })); q.debug && r.benchmark("Applying Zebra widget", D) }, remove: function (d, q, n) { var r; q = q.$tbodies; var v = (n.zebra || ["even", "odd"]).join(" "); for (n = 0; n < q.length; n++)r = h.tablesorter.processTbody(d, q.eq(n), !0), r.children().removeClass(v), h.tablesorter.processTbody(d, r, !1) } }) }(jQuery);
26
- // d3.v3.min.js
27
- d3 = function () {
28
- function n(n) { return null != n && !isNaN(n) } function t(n) { return n.length } function e(n) { for (var t = 1; n * t % 1;)t *= 10; return t } function r(n, t) { try { for (var e in t) Object.defineProperty(n.prototype, e, { value: t[e], enumerable: !1 }) } catch (r) { n.prototype = t } } function u() { } function i() { } function o(n, t, e) { return function () { var r = e.apply(t, arguments); return r === t ? n : r } } function a(n, t) { if (t in n) return t; t = t.charAt(0).toUpperCase() + t.substring(1); for (var e = 0, r = Co.length; r > e; ++e) { var u = Co[e] + t; if (u in n) return u } } function c() { } function l() { } function s(n) { function t() { for (var t, r = e, u = -1, i = r.length; ++u < i;)(t = r[u].on) && t.apply(this, arguments); return n } var e = [], r = new u; return t.on = function (t, u) { var i, o = r.get(t); return arguments.length < 2 ? o && o.on : (o && (o.on = null, e = e.slice(0, i = e.indexOf(o)).concat(e.slice(i + 1)), r.remove(t)), u && e.push(r.set(t, { on: u })), n) }, t } function f() { vo.event.preventDefault() } function h() { for (var n, t = vo.event; n = t.sourceEvent;)t = n; return t } function g(n) { for (var t = new l, e = 0, r = arguments.length; ++e < r;)t[arguments[e]] = s(t); return t.of = function (e, r) { return function (u) { try { var i = u.sourceEvent = vo.event; u.target = n, vo.event = u, t[u.type].apply(e, r) } finally { vo.event = i } } }, t } function p(n) { return jo(n, Oo), n } function d(n) { return "function" == typeof n ? n : function () { return Lo(n, this) } } function v(n) { return "function" == typeof n ? n : function () { return Ho(n, this) } } function m(n, t) { function e() { this.removeAttribute(n) } function r() { this.removeAttributeNS(n.space, n.local) } function u() { this.setAttribute(n, t) } function i() { this.setAttributeNS(n.space, n.local, t) } function o() { var e = t.apply(this, arguments); null == e ? this.removeAttribute(n) : this.setAttribute(n, e) } function a() { var e = t.apply(this, arguments); null == e ? this.removeAttributeNS(n.space, n.local) : this.setAttributeNS(n.space, n.local, e) } return n = vo.ns.qualify(n), null == t ? n.local ? r : e : "function" == typeof t ? n.local ? a : o : n.local ? i : u } function y(n) { return n.trim().replace(/\s+/g, " ") } function M(n) { return new RegExp("(?:^|\\s+)" + vo.requote(n) + "(?:\\s+|$)", "g") } function x(n, t) { function e() { for (var e = -1; ++e < u;)n[e](this, t) } function r() { for (var e = -1, r = t.apply(this, arguments); ++e < u;)n[e](this, r) } n = n.trim().split(/\s+/).map(b); var u = n.length; return "function" == typeof t ? r : e } function b(n) { var t = M(n); return function (e, r) { if (u = e.classList) return r ? u.add(n) : u.remove(n); var u = e.getAttribute("class") || ""; r ? (t.lastIndex = 0, t.test(u) || e.setAttribute("class", y(u + " " + n))) : e.setAttribute("class", y(u.replace(t, " "))) } } function _(n, t, e) { function r() { this.style.removeProperty(n) } function u() { this.style.setProperty(n, t, e) } function i() { var r = t.apply(this, arguments); null == r ? this.style.removeProperty(n) : this.style.setProperty(n, r, e) } return null == t ? r : "function" == typeof t ? i : u } function w(n, t) { function e() { delete this[n] } function r() { this[n] = t } function u() { var e = t.apply(this, arguments); null == e ? delete this[n] : this[n] = e } return null == t ? e : "function" == typeof t ? u : r } function S(n) { return "function" == typeof n ? n : (n = vo.ns.qualify(n)).local ? function () { return Mo.createElementNS(n.space, n.local) } : function () { return Mo.createElementNS(this.namespaceURI, n) } } function E(n) { return { __data__: n } } function k(n) { return function () { return Po(this, n) } } function A(n) { return arguments.length || (n = vo.ascending), function (t, e) { return t && e ? n(t.__data__, e.__data__) : !t - !e } } function N(n, t) { for (var e = 0, r = n.length; r > e; e++)for (var u, i = n[e], o = 0, a = i.length; a > o; o++)(u = i[o]) && t(u, o, e); return n } function q(n) { return jo(n, Yo), n } function T(n) { var t, e; return function (r, u, i) { var o, a = n[i].update, c = a.length; for (i != e && (e = i, t = 0), u >= t && (t = u + 1); !(o = a[t]) && ++t < c;); return o } } function z(n, t, e) { function r() { var t = this[o]; t && (this.removeEventListener(n, t, t.$), delete this[o]) } function u() { var u = l(t, yo(arguments)); r.call(this), this.addEventListener(n, this[o] = u, u.$ = e), u._ = t } function i() { var t, e = new RegExp("^__on([^.]+)" + vo.requote(n) + "$"); for (var r in this) if (t = r.match(e)) { var u = this[r]; this.removeEventListener(t[1], u, u.$), delete this[r] } } var o = "__on" + n, a = n.indexOf("."), l = C; a > 0 && (n = n.substring(0, a)); var s = Uo.get(n); return s && (n = s, l = D), a ? t ? u : r : t ? c : i } function C(n, t) { return function (e) { var r = vo.event; vo.event = e, t[0] = this.__data__; try { n.apply(this, t) } finally { vo.event = r } } } function D(n, t) { var e = C(n, t); return function (n) { var t = this, r = n.relatedTarget; r && (r === t || 8 & r.compareDocumentPosition(t)) || e.call(t, n) } } function j() { var n = ".dragsuppress-" + ++Zo, t = "touchmove" + n, e = "selectstart" + n, r = "dragstart" + n, u = "click" + n, i = vo.select(bo).on(t, f).on(e, f).on(r, f), o = xo.style, a = o[Vo]; return o[Vo] = "none", function (t) { function e() { i.on(u, null) } i.on(n, null), o[Vo] = a, t && (i.on(u, function () { f(), e() }, !0), setTimeout(e, 0)) } } function L(n, t) { var e = n.ownerSVGElement || n; if (e.createSVGPoint) { var r = e.createSVGPoint(); if (0 > Xo && (bo.scrollX || bo.scrollY)) { e = vo.select("body").append("svg").style({ position: "absolute", top: 0, left: 0, margin: 0, padding: 0, border: "none" }, "important"); var u = e[0][0].getScreenCTM(); Xo = !(u.f || u.e), e.remove() } return Xo ? (r.x = t.pageX, r.y = t.pageY) : (r.x = t.clientX, r.y = t.clientY), r = r.matrixTransform(n.getScreenCTM().inverse()), [r.x, r.y] } var i = n.getBoundingClientRect(); return [t.clientX - i.left - n.clientLeft, t.clientY - i.top - n.clientTop] } function H(n) { return n > 0 ? 1 : 0 > n ? -1 : 0 } function F(n) { return n > 1 ? 0 : -1 > n ? Bo : Math.acos(n) } function P(n) { return n > 1 ? Bo / 2 : -1 > n ? -Bo / 2 : Math.asin(n) } function O(n) { return (Math.exp(n) - Math.exp(-n)) / 2 } function R(n) { return (Math.exp(n) + Math.exp(-n)) / 2 } function Y(n) { return O(n) / R(n) } function I(n) { return (n = Math.sin(n / 2)) * n } function U() { } function V(n, t, e) { return new Z(n, t, e) } function Z(n, t, e) { this.h = n, this.s = t, this.l = e } function X(n, t, e) { function r(n) { return n > 360 ? n -= 360 : 0 > n && (n += 360), 60 > n ? i + (o - i) * n / 60 : 180 > n ? o : 240 > n ? i + (o - i) * (240 - n) / 60 : i } function u(n) { return Math.round(255 * r(n)) } var i, o; return n = isNaN(n) ? 0 : (n %= 360) < 0 ? n + 360 : n, t = isNaN(t) ? 0 : 0 > t ? 0 : t > 1 ? 1 : t, e = 0 > e ? 0 : e > 1 ? 1 : e, o = .5 >= e ? e * (1 + t) : e + t - e * t, i = 2 * e - o, it(u(n + 120), u(n), u(n - 120)) } function B(n, t, e) { return new $(n, t, e) } function $(n, t, e) { this.h = n, this.c = t, this.l = e } function W(n, t, e) { return isNaN(n) && (n = 0), isNaN(t) && (t = 0), J(e, Math.cos(n *= Jo) * t, Math.sin(n) * t) } function J(n, t, e) { return new G(n, t, e) } function G(n, t, e) { this.l = n, this.a = t, this.b = e } function K(n, t, e) { var r = (n + 16) / 116, u = r + t / 500, i = r - e / 200; return u = nt(u) * aa, r = nt(r) * ca, i = nt(i) * la, it(et(3.2404542 * u - 1.5371385 * r - .4985314 * i), et(-.969266 * u + 1.8760108 * r + .041556 * i), et(.0556434 * u - .2040259 * r + 1.0572252 * i)) } function Q(n, t, e) { return n > 0 ? B(Math.atan2(e, t) * Go, Math.sqrt(t * t + e * e), n) : B(0 / 0, 0 / 0, n) } function nt(n) { return n > .206893034 ? n * n * n : (n - 4 / 29) / 7.787037 } function tt(n) { return n > .008856 ? Math.pow(n, 1 / 3) : 7.787037 * n + 4 / 29 } function et(n) { return Math.round(255 * (.00304 >= n ? 12.92 * n : 1.055 * Math.pow(n, 1 / 2.4) - .055)) } function rt(n) { return it(n >> 16, 255 & n >> 8, 255 & n) } function ut(n) { return rt(n) + "" } function it(n, t, e) { return new ot(n, t, e) } function ot(n, t, e) { this.r = n, this.g = t, this.b = e } function at(n) { return 16 > n ? "0" + Math.max(0, n).toString(16) : Math.min(255, n).toString(16) } function ct(n, t, e) { var r, u, i, o = 0, a = 0, c = 0; if (r = /([a-z]+)\((.*)\)/i.exec(n)) switch (u = r[2].split(","), r[1]) { case "hsl": return e(parseFloat(u[0]), parseFloat(u[1]) / 100, parseFloat(u[2]) / 100); case "rgb": return t(ht(u[0]), ht(u[1]), ht(u[2])) }return (i = ha.get(n)) ? t(i.r, i.g, i.b) : (null != n && "#" === n.charAt(0) && (4 === n.length ? (o = n.charAt(1), o += o, a = n.charAt(2), a += a, c = n.charAt(3), c += c) : 7 === n.length && (o = n.substring(1, 3), a = n.substring(3, 5), c = n.substring(5, 7)), o = parseInt(o, 16), a = parseInt(a, 16), c = parseInt(c, 16)), t(o, a, c)) } function lt(n, t, e) { var r, u, i = Math.min(n /= 255, t /= 255, e /= 255), o = Math.max(n, t, e), a = o - i, c = (o + i) / 2; return a ? (u = .5 > c ? a / (o + i) : a / (2 - o - i), r = n == o ? (t - e) / a + (e > t ? 6 : 0) : t == o ? (e - n) / a + 2 : (n - t) / a + 4, r *= 60) : (r = 0 / 0, u = c > 0 && 1 > c ? 0 : r), V(r, u, c) } function st(n, t, e) { n = ft(n), t = ft(t), e = ft(e); var r = tt((.4124564 * n + .3575761 * t + .1804375 * e) / aa), u = tt((.2126729 * n + .7151522 * t + .072175 * e) / ca), i = tt((.0193339 * n + .119192 * t + .9503041 * e) / la); return J(116 * u - 16, 500 * (r - u), 200 * (u - i)) } function ft(n) { return (n /= 255) <= .04045 ? n / 12.92 : Math.pow((n + .055) / 1.055, 2.4) } function ht(n) { var t = parseFloat(n); return "%" === n.charAt(n.length - 1) ? Math.round(2.55 * t) : t } function gt(n) { return "function" == typeof n ? n : function () { return n } } function pt(n) { return n } function dt(n) { return function (t, e, r) { return 2 === arguments.length && "function" == typeof e && (r = e, e = null), vt(t, e, n, r) } } function vt(n, t, e, r) { function u() { var n, t = c.status; if (!t && c.responseText || t >= 200 && 300 > t || 304 === t) { try { n = e.call(i, c) } catch (r) { return o.error.call(i, r), void 0 } o.load.call(i, n) } else o.error.call(i, c) } var i = {}, o = vo.dispatch("beforesend", "progress", "load", "error"), a = {}, c = new XMLHttpRequest, l = null; return !bo.XDomainRequest || "withCredentials" in c || !/^(http(s)?:)?\/\//.test(n) || (c = new XDomainRequest), "onload" in c ? c.onload = c.onerror = u : c.onreadystatechange = function () { c.readyState > 3 && u() }, c.onprogress = function (n) { var t = vo.event; vo.event = n; try { o.progress.call(i, c) } finally { vo.event = t } }, i.header = function (n, t) { return n = (n + "").toLowerCase(), arguments.length < 2 ? a[n] : (null == t ? delete a[n] : a[n] = t + "", i) }, i.mimeType = function (n) { return arguments.length ? (t = null == n ? null : n + "", i) : t }, i.responseType = function (n) { return arguments.length ? (l = n, i) : l }, i.response = function (n) { return e = n, i }, ["get", "post"].forEach(function (n) { i[n] = function () { return i.send.apply(i, [n].concat(yo(arguments))) } }), i.send = function (e, r, u) { if (2 === arguments.length && "function" == typeof r && (u = r, r = null), c.open(e, n, !0), null == t || "accept" in a || (a.accept = t + ",*/*"), c.setRequestHeader) for (var s in a) c.setRequestHeader(s, a[s]); return null != t && c.overrideMimeType && c.overrideMimeType(t), null != l && (c.responseType = l), null != u && i.on("error", u).on("load", function (n) { u(null, n) }), o.beforesend.call(i, c), c.send(null == r ? null : r), i }, i.abort = function () { return c.abort(), i }, vo.rebind(i, o, "on"), null == r ? i : i.get(mt(r)) } function mt(n) { return 1 === n.length ? function (t, e) { n(null == t ? e : null) } : n } function yt() { var n = xt(), t = bt() - n; t > 24 ? (isFinite(t) && (clearTimeout(va), va = setTimeout(yt, t)), da = 0) : (da = 1, ya(yt)) } function Mt(n, t, e) { var r = arguments.length; 2 > r && (t = 0), 3 > r && (e = Date.now()), ma.callback = n, ma.time = e + t } function xt() { var n = Date.now(); for (ma = ga; ma;)n >= ma.time && (ma.flush = ma.callback(n - ma.time)), ma = ma.next; return n } function bt() { for (var n, t = ga, e = 1 / 0; t;)t.flush ? t = n ? n.next = t.next : ga = t.next : (t.time < e && (e = t.time), t = (n = t).next); return pa = n, e } function _t(n, t) { var e = Math.pow(10, 3 * Math.abs(8 - t)); return { scale: t > 8 ? function (n) { return n / e } : function (n) { return n * e }, symbol: n } } function wt(n, t) { return t - (n ? Math.ceil(Math.log(n) / Math.LN10) : 1) } function St(n) { return n + "" } function Et() { } function kt(n, t, e) { var r = e.s = n + t, u = r - n, i = r - u; e.t = n - i + (t - u) } function At(n, t) { n && Ta.hasOwnProperty(n.type) && Ta[n.type](n, t) } function Nt(n, t, e) { var r, u = -1, i = n.length - e; for (t.lineStart(); ++u < i;)r = n[u], t.point(r[0], r[1], r[2]); t.lineEnd() } function qt(n, t) { var e = -1, r = n.length; for (t.polygonStart(); ++e < r;)Nt(n[e], t, 1); t.polygonEnd() } function Tt() { function n(n, t) { n *= Jo, t = t * Jo / 2 + Bo / 4; var e = n - r, o = Math.cos(t), a = Math.sin(t), c = i * a, l = u * o + c * Math.cos(e), s = c * Math.sin(e); Ca.add(Math.atan2(s, l)), r = n, u = o, i = a } var t, e, r, u, i; Da.point = function (o, a) { Da.point = n, r = (t = o) * Jo, u = Math.cos(a = (e = a) * Jo / 2 + Bo / 4), i = Math.sin(a) }, Da.lineEnd = function () { n(t, e) } } function zt(n) { var t = n[0], e = n[1], r = Math.cos(e); return [r * Math.cos(t), r * Math.sin(t), Math.sin(e)] } function Ct(n, t) { return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] } function Dt(n, t) { return [n[1] * t[2] - n[2] * t[1], n[2] * t[0] - n[0] * t[2], n[0] * t[1] - n[1] * t[0]] } function jt(n, t) { n[0] += t[0], n[1] += t[1], n[2] += t[2] } function Lt(n, t) { return [n[0] * t, n[1] * t, n[2] * t] } function Ht(n) { var t = Math.sqrt(n[0] * n[0] + n[1] * n[1] + n[2] * n[2]); n[0] /= t, n[1] /= t, n[2] /= t } function Ft(n) { return [Math.atan2(n[1], n[0]), P(n[2])] } function Pt(n, t) { return Math.abs(n[0] - t[0]) < $o && Math.abs(n[1] - t[1]) < $o } function Ot(n, t) { n *= Jo; var e = Math.cos(t *= Jo); Rt(e * Math.cos(n), e * Math.sin(n), Math.sin(t)) } function Rt(n, t, e) { ++ja, Ha += (n - Ha) / ja, Fa += (t - Fa) / ja, Pa += (e - Pa) / ja } function Yt() { function n(n, u) { n *= Jo; var i = Math.cos(u *= Jo), o = i * Math.cos(n), a = i * Math.sin(n), c = Math.sin(u), l = Math.atan2(Math.sqrt((l = e * c - r * a) * l + (l = r * o - t * c) * l + (l = t * a - e * o) * l), t * o + e * a + r * c); La += l, Oa += l * (t + (t = o)), Ra += l * (e + (e = a)), Ya += l * (r + (r = c)), Rt(t, e, r) } var t, e, r; Za.point = function (u, i) { u *= Jo; var o = Math.cos(i *= Jo); t = o * Math.cos(u), e = o * Math.sin(u), r = Math.sin(i), Za.point = n, Rt(t, e, r) } } function It() { Za.point = Ot } function Ut() { function n(n, t) { n *= Jo; var e = Math.cos(t *= Jo), o = e * Math.cos(n), a = e * Math.sin(n), c = Math.sin(t), l = u * c - i * a, s = i * o - r * c, f = r * a - u * o, h = Math.sqrt(l * l + s * s + f * f), g = r * o + u * a + i * c, p = h && -F(g) / h, d = Math.atan2(h, g); Ia += p * l, Ua += p * s, Va += p * f, La += d, Oa += d * (r + (r = o)), Ra += d * (u + (u = a)), Ya += d * (i + (i = c)), Rt(r, u, i) } var t, e, r, u, i; Za.point = function (o, a) { t = o, e = a, Za.point = n, o *= Jo; var c = Math.cos(a *= Jo); r = c * Math.cos(o), u = c * Math.sin(o), i = Math.sin(a), Rt(r, u, i) }, Za.lineEnd = function () { n(t, e), Za.lineEnd = It, Za.point = Ot } } function Vt() { return !0 } function Zt(n, t, e, r, u) { var i = [], o = []; if (n.forEach(function (n) { if (!((t = n.length - 1) <= 0)) { var t, e = n[0], r = n[t]; if (Pt(e, r)) { u.lineStart(); for (var a = 0; t > a; ++a)u.point((e = n[a])[0], e[1]); return u.lineEnd(), void 0 } var c = { point: e, points: n, other: null, visited: !1, entry: !0, subject: !0 }, l = { point: e, points: [e], other: c, visited: !1, entry: !1, subject: !1 }; c.other = l, i.push(c), o.push(l), c = { point: r, points: [r], other: null, visited: !1, entry: !1, subject: !0 }, l = { point: r, points: [r], other: c, visited: !1, entry: !0, subject: !1 }, c.other = l, i.push(c), o.push(l) } }), o.sort(t), Xt(i), Xt(o), i.length) { if (e) for (var a = 1, c = !e(o[0].point), l = o.length; l > a; ++a)o[a].entry = c = !c; for (var s, f, h, g = i[0]; ;) { for (s = g; s.visited;)if ((s = s.next) === g) return; f = s.points, u.lineStart(); do { if (s.visited = s.other.visited = !0, s.entry) { if (s.subject) for (var a = 0; a < f.length; a++)u.point((h = f[a])[0], h[1]); else r(s.point, s.next.point, 1, u); s = s.next } else { if (s.subject) { f = s.prev.points; for (var a = f.length; --a >= 0;)u.point((h = f[a])[0], h[1]) } else r(s.point, s.prev.point, -1, u); s = s.prev } s = s.other, f = s.points } while (!s.visited); u.lineEnd() } } } function Xt(n) { if (t = n.length) { for (var t, e, r = 0, u = n[0]; ++r < t;)u.next = e = n[r], e.prev = u, u = e; u.next = e = n[0], e.prev = u } } function Bt(n, t, e, r) { return function (u) { function i(t, e) { n(t, e) && u.point(t, e) } function o(n, t) { d.point(n, t) } function a() { v.point = o, d.lineStart() } function c() { v.point = i, d.lineEnd() } function l(n, t) { y.point(n, t), p.push([n, t]) } function s() { y.lineStart(), p = [] } function f() { l(p[0][0], p[0][1]), y.lineEnd(); var n, t = y.clean(), e = m.buffer(), r = e.length; if (p.pop(), g.push(p), p = null, r) { if (1 & t) { n = e[0]; var i, r = n.length - 1, o = -1; for (u.lineStart(); ++o < r;)u.point((i = n[o])[0], i[1]); return u.lineEnd(), void 0 } r > 1 && 2 & t && e.push(e.pop().concat(e.shift())), h.push(e.filter($t)) } } var h, g, p, d = t(u), v = { point: i, lineStart: a, lineEnd: c, polygonStart: function () { v.point = l, v.lineStart = s, v.lineEnd = f, h = [], g = [], u.polygonStart() }, polygonEnd: function () { v.point = i, v.lineStart = a, v.lineEnd = c, h = vo.merge(h), h.length ? Zt(h, Jt, null, e, u) : r(g) && (u.lineStart(), e(null, null, 1, u), u.lineEnd()), u.polygonEnd(), h = g = null }, sphere: function () { u.polygonStart(), u.lineStart(), e(null, null, 1, u), u.lineEnd(), u.polygonEnd() } }, m = Wt(), y = t(m); return v } } function $t(n) { return n.length > 1 } function Wt() { var n, t = []; return { lineStart: function () { t.push(n = []) }, point: function (t, e) { n.push([t, e]) }, lineEnd: c, buffer: function () { var e = t; return t = [], n = null, e }, rejoin: function () { t.length > 1 && t.push(t.pop().concat(t.shift())) } } } function Jt(n, t) { return ((n = n.point)[0] < 0 ? n[1] - Bo / 2 - $o : Bo / 2 - n[1]) - ((t = t.point)[0] < 0 ? t[1] - Bo / 2 - $o : Bo / 2 - t[1]) } function Gt(n, t) { var e = n[0], r = n[1], u = [Math.sin(e), -Math.cos(e), 0], i = 0, o = !1, a = !1, c = 0; Ca.reset(); for (var l = 0, s = t.length; s > l; ++l) { var f = t[l], h = f.length; if (h) { for (var g = f[0], p = g[0], d = g[1] / 2 + Bo / 4, v = Math.sin(d), m = Math.cos(d), y = 1; ;) { y === h && (y = 0), n = f[y]; var M = n[0], x = n[1] / 2 + Bo / 4, b = Math.sin(x), _ = Math.cos(x), w = M - p, S = Math.abs(w) > Bo, E = v * b; if (Ca.add(Math.atan2(E * Math.sin(w), m * _ + E * Math.cos(w))), Math.abs(x) < $o && (a = !0), i += S ? w + (w >= 0 ? 2 : -2) * Bo : w, S ^ p >= e ^ M >= e) { var k = Dt(zt(g), zt(n)); Ht(k); var A = Dt(u, k); Ht(A); var N = (S ^ w >= 0 ? -1 : 1) * P(A[2]); r > N && (c += S ^ w >= 0 ? 1 : -1) } if (!y++) break; p = M, v = b, m = _, g = n } Math.abs(i) > $o && (o = !0) } } return (!a && !o && 0 > Ca || -$o > i) ^ 1 & c } function Kt(n) { var t, e = 0 / 0, r = 0 / 0, u = 0 / 0; return { lineStart: function () { n.lineStart(), t = 1 }, point: function (i, o) { var a = i > 0 ? Bo : -Bo, c = Math.abs(i - e); Math.abs(c - Bo) < $o ? (n.point(e, r = (r + o) / 2 > 0 ? Bo / 2 : -Bo / 2), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(a, r), n.point(i, r), t = 0) : u !== a && c >= Bo && (Math.abs(e - u) < $o && (e -= u * $o), Math.abs(i - a) < $o && (i -= a * $o), r = Qt(e, r, i, o), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(a, r), t = 0), n.point(e = i, r = o), u = a }, lineEnd: function () { n.lineEnd(), e = r = 0 / 0 }, clean: function () { return 2 - t } } } function Qt(n, t, e, r) { var u, i, o = Math.sin(n - e); return Math.abs(o) > $o ? Math.atan((Math.sin(t) * (i = Math.cos(r)) * Math.sin(e) - Math.sin(r) * (u = Math.cos(t)) * Math.sin(n)) / (u * i * o)) : (t + r) / 2 } function ne(n, t, e, r) { var u; if (null == n) u = e * Bo / 2, r.point(-Bo, u), r.point(0, u), r.point(Bo, u), r.point(Bo, 0), r.point(Bo, -u), r.point(0, -u), r.point(-Bo, -u), r.point(-Bo, 0), r.point(-Bo, u); else if (Math.abs(n[0] - t[0]) > $o) { var i = (n[0] < t[0] ? 1 : -1) * Bo; u = e * i / 2, r.point(-i, u), r.point(0, u), r.point(i, u) } else r.point(t[0], t[1]) } function te(n) { return Gt(Ba, n) } function ee(n) { function t(n, t) { return Math.cos(n) * Math.cos(t) > o } function e(n) { var e, i, o, c, s; return { lineStart: function () { c = o = !1, s = 1 }, point: function (f, h) { var g, p = [f, h], d = t(f, h), v = a ? d ? 0 : u(f, h) : d ? u(f + (0 > f ? Bo : -Bo), h) : 0; if (!e && (c = o = d) && n.lineStart(), d !== o && (g = r(e, p), (Pt(e, g) || Pt(p, g)) && (p[0] += $o, p[1] += $o, d = t(p[0], p[1]))), d !== o) s = 0, d ? (n.lineStart(), g = r(p, e), n.point(g[0], g[1])) : (g = r(e, p), n.point(g[0], g[1]), n.lineEnd()), e = g; else if (l && e && a ^ d) { var m; v & i || !(m = r(p, e, !0)) || (s = 0, a ? (n.lineStart(), n.point(m[0][0], m[0][1]), n.point(m[1][0], m[1][1]), n.lineEnd()) : (n.point(m[1][0], m[1][1]), n.lineEnd(), n.lineStart(), n.point(m[0][0], m[0][1]))) } !d || e && Pt(e, p) || n.point(p[0], p[1]), e = p, o = d, i = v }, lineEnd: function () { o && n.lineEnd(), e = null }, clean: function () { return s | (c && o) << 1 } } } function r(n, t, e) { var r = zt(n), u = zt(t), i = [1, 0, 0], a = Dt(r, u), c = Ct(a, a), l = a[0], s = c - l * l; if (!s) return !e && n; var f = o * c / s, h = -o * l / s, g = Dt(i, a), p = Lt(i, f), d = Lt(a, h); jt(p, d); var v = g, m = Ct(p, v), y = Ct(v, v), M = m * m - y * (Ct(p, p) - 1); if (!(0 > M)) { var x = Math.sqrt(M), b = Lt(v, (-m - x) / y); if (jt(b, p), b = Ft(b), !e) return b; var _, w = n[0], S = t[0], E = n[1], k = t[1]; w > S && (_ = w, w = S, S = _); var A = S - w, N = Math.abs(A - Bo) < $o, q = N || $o > A; if (!N && E > k && (_ = E, E = k, k = _), q ? N ? E + k > 0 ^ b[1] < (Math.abs(b[0] - w) < $o ? E : k) : E <= b[1] && b[1] <= k : A > Bo ^ (w <= b[0] && b[0] <= S)) { var T = Lt(v, (-m + x) / y); return jt(T, p), [b, Ft(T)] } } } function u(t, e) { var r = a ? n : Bo - n, u = 0; return -r > t ? u |= 1 : t > r && (u |= 2), -r > e ? u |= 4 : e > r && (u |= 8), u } function i(n) { return Gt(c, n) } var o = Math.cos(n), a = o > 0, c = [n, 0], l = Math.abs(o) > $o, s = Ne(n, 6 * Jo); return Bt(t, e, s, i) } function re(n, t, e, r) { function u(r, u) { return Math.abs(r[0] - n) < $o ? u > 0 ? 0 : 3 : Math.abs(r[0] - e) < $o ? u > 0 ? 2 : 1 : Math.abs(r[1] - t) < $o ? u > 0 ? 1 : 0 : u > 0 ? 3 : 2 } function i(n, t) { return o(n.point, t.point) } function o(n, t) { var e = u(n, 1), r = u(t, 1); return e !== r ? e - r : 0 === e ? t[1] - n[1] : 1 === e ? n[0] - t[0] : 2 === e ? n[1] - t[1] : t[0] - n[0] } function a(u, i) { var o = i[0] - u[0], a = i[1] - u[1], c = [0, 1]; return Math.abs(o) < $o && Math.abs(a) < $o ? n <= u[0] && u[0] <= e && t <= u[1] && u[1] <= r : ue(n - u[0], o, c) && ue(u[0] - e, -o, c) && ue(t - u[1], a, c) && ue(u[1] - r, -a, c) ? (c[1] < 1 && (i[0] = u[0] + c[1] * o, i[1] = u[1] + c[1] * a), c[0] > 0 && (u[0] += c[0] * o, u[1] += c[0] * a), !0) : !1 } return function (c) { function l(i) { var o = u(i, -1), a = s([0 === o || 3 === o ? n : e, o > 1 ? r : t]); return a } function s(n) { for (var t = 0, e = M.length, r = n[1], u = 0; e > u; ++u)for (var i, o = 1, a = M[u], c = a.length, l = a[0]; c > o; ++o)i = a[o], l[1] <= r ? i[1] > r && f(l, i, n) > 0 && ++t : i[1] <= r && f(l, i, n) < 0 && --t, l = i; return 0 !== t } function f(n, t, e) { return (t[0] - n[0]) * (e[1] - n[1]) - (e[0] - n[0]) * (t[1] - n[1]) } function h(i, a, c, l) { var s = 0, f = 0; if (null == i || (s = u(i, c)) !== (f = u(a, c)) || o(i, a) < 0 ^ c > 0) { do l.point(0 === s || 3 === s ? n : e, s > 1 ? r : t); while ((s = (s + c + 4) % 4) !== f) } else l.point(a[0], a[1]) } function g(u, i) { return u >= n && e >= u && i >= t && r >= i } function p(n, t) { g(n, t) && c.point(n, t) } function d() { T.point = m, M && M.push(x = []), A = !0, k = !1, S = E = 0 / 0 } function v() { y && (m(b, _), w && k && q.rejoin(), y.push(q.buffer())), T.point = p, k && c.lineEnd() } function m(n, t) { n = Math.max(-$a, Math.min($a, n)), t = Math.max(-$a, Math.min($a, t)); var e = g(n, t); if (M && x.push([n, t]), A) b = n, _ = t, w = e, A = !1, e && (c.lineStart(), c.point(n, t)); else if (e && k) c.point(n, t); else { var r = [S, E], u = [n, t]; a(r, u) ? (k || (c.lineStart(), c.point(r[0], r[1])), c.point(u[0], u[1]), e || c.lineEnd()) : e && (c.lineStart(), c.point(n, t)) } S = n, E = t, k = e } var y, M, x, b, _, w, S, E, k, A, N = c, q = Wt(), T = { point: p, lineStart: d, lineEnd: v, polygonStart: function () { c = q, y = [], M = [] }, polygonEnd: function () { c = N, (y = vo.merge(y)).length ? (c.polygonStart(), Zt(y, i, l, h, c), c.polygonEnd()) : s([n, t]) && (c.polygonStart(), c.lineStart(), h(null, null, 1, c), c.lineEnd(), c.polygonEnd()), y = M = x = null } }; return T } } function ue(n, t, e) { if (Math.abs(t) < $o) return 0 >= n; var r = n / t; if (t > 0) { if (r > e[1]) return !1; r > e[0] && (e[0] = r) } else { if (r < e[0]) return !1; r < e[1] && (e[1] = r) } return !0 } function ie(n, t) { function e(e, r) { return e = n(e, r), t(e[0], e[1]) } return n.invert && t.invert && (e.invert = function (e, r) { return e = t.invert(e, r), e && n.invert(e[0], e[1]) }), e } function oe(n) { var t = 0, e = Bo / 3, r = be(n), u = r(t, e); return u.parallels = function (n) { return arguments.length ? r(t = n[0] * Bo / 180, e = n[1] * Bo / 180) : [180 * (t / Bo), 180 * (e / Bo)] }, u } function ae(n, t) { function e(n, t) { var e = Math.sqrt(i - 2 * u * Math.sin(t)) / u; return [e * Math.sin(n *= u), o - e * Math.cos(n)] } var r = Math.sin(n), u = (r + Math.sin(t)) / 2, i = 1 + r * (2 * u - r), o = Math.sqrt(i) / u; return e.invert = function (n, t) { var e = o - t; return [Math.atan2(n, e) / u, P((i - (n * n + e * e) * u * u) / (2 * u))] }, e } function ce() { function n(n, t) { Ja += u * n - r * t, r = n, u = t } var t, e, r, u; tc.point = function (i, o) { tc.point = n, t = r = i, e = u = o }, tc.lineEnd = function () { n(t, e) } } function le(n, t) { Ga > n && (Ga = n), n > Qa && (Qa = n), Ka > t && (Ka = t), t > nc && (nc = t) } function se() { function n(n, t) { o.push("M", n, ",", t, i) } function t(n, t) { o.push("M", n, ",", t), a.point = e } function e(n, t) { o.push("L", n, ",", t) } function r() { a.point = n } function u() { o.push("Z") } var i = fe(4.5), o = [], a = { point: n, lineStart: function () { a.point = t }, lineEnd: r, polygonStart: function () { a.lineEnd = u }, polygonEnd: function () { a.lineEnd = r, a.point = n }, pointRadius: function (n) { return i = fe(n), a }, result: function () { if (o.length) { var n = o.join(""); return o = [], n } } }; return a } function fe(n) { return "m0," + n + "a" + n + "," + n + " 0 1,1 0," + -2 * n + "a" + n + "," + n + " 0 1,1 0," + 2 * n + "z" } function he(n, t) { Ha += n, Fa += t, ++Pa } function ge() { function n(n, r) { var u = n - t, i = r - e, o = Math.sqrt(u * u + i * i); Oa += o * (t + n) / 2, Ra += o * (e + r) / 2, Ya += o, he(t = n, e = r) } var t, e; rc.point = function (r, u) { rc.point = n, he(t = r, e = u) } } function pe() { rc.point = he } function de() { function n(n, t) { var e = n - r, i = t - u, o = Math.sqrt(e * e + i * i); Oa += o * (r + n) / 2, Ra += o * (u + t) / 2, Ya += o, o = u * n - r * t, Ia += o * (r + n), Ua += o * (u + t), Va += 3 * o, he(r = n, u = t) } var t, e, r, u; rc.point = function (i, o) { rc.point = n, he(t = r = i, e = u = o) }, rc.lineEnd = function () { n(t, e) } } function ve(n) { function t(t, e) { n.moveTo(t, e), n.arc(t, e, o, 0, 2 * Bo) } function e(t, e) { n.moveTo(t, e), a.point = r } function r(t, e) { n.lineTo(t, e) } function u() { a.point = t } function i() { n.closePath() } var o = 4.5, a = { point: t, lineStart: function () { a.point = e }, lineEnd: u, polygonStart: function () { a.lineEnd = i }, polygonEnd: function () { a.lineEnd = u, a.point = t }, pointRadius: function (n) { return o = n, a }, result: c }; return a } function me(n) { function t(t) { function r(e, r) { e = n(e, r), t.point(e[0], e[1]) } function u() { M = 0 / 0, S.point = o, t.lineStart() } function o(r, u) { var o = zt([r, u]), a = n(r, u); e(M, x, y, b, _, w, M = a[0], x = a[1], y = r, b = o[0], _ = o[1], w = o[2], i, t), t.point(M, x) } function a() { S.point = r, t.lineEnd() } function c() { u(), S.point = l, S.lineEnd = s } function l(n, t) { o(f = n, h = t), g = M, p = x, d = b, v = _, m = w, S.point = o } function s() { e(M, x, y, b, _, w, g, p, f, d, v, m, i, t), S.lineEnd = a, a() } var f, h, g, p, d, v, m, y, M, x, b, _, w, S = { point: r, lineStart: u, lineEnd: a, polygonStart: function () { t.polygonStart(), S.lineStart = c }, polygonEnd: function () { t.polygonEnd(), S.lineStart = u } }; return S } function e(t, i, o, a, c, l, s, f, h, g, p, d, v, m) { var y = s - t, M = f - i, x = y * y + M * M; if (x > 4 * r && v--) { var b = a + g, _ = c + p, w = l + d, S = Math.sqrt(b * b + _ * _ + w * w), E = Math.asin(w /= S), k = Math.abs(Math.abs(w) - 1) < $o ? (o + h) / 2 : Math.atan2(_, b), A = n(k, E), N = A[0], q = A[1], T = N - t, z = q - i, C = M * T - y * z; (C * C / x > r || Math.abs((y * T + M * z) / x - .5) > .3 || u > a * g + c * p + l * d) && (e(t, i, o, a, c, l, N, q, k, b /= S, _ /= S, w, v, m), m.point(N, q), e(N, q, k, b, _, w, s, f, h, g, p, d, v, m)) } } var r = .5, u = Math.cos(30 * Jo), i = 16; return t.precision = function (n) { return arguments.length ? (i = (r = n * n) > 0 && 16, t) : Math.sqrt(r) }, t } function ye(n) { this.stream = n } function Me(n) { var t = me(function (t, e) { return n([t * Go, e * Go]) }); return function (n) { var e = new ye(n = t(n)); return e.point = function (t, e) { n.point(t * Jo, e * Jo) }, e } } function xe(n) { return be(function () { return n })() } function be(n) { function t(n) { return n = a(n[0] * Jo, n[1] * Jo), [n[0] * h + c, l - n[1] * h] } function e(n) { return n = a.invert((n[0] - c) / h, (l - n[1]) / h), n && [n[0] * Go, n[1] * Go] } function r() { a = ie(o = Se(m, y, M), i); var n = i(d, v); return c = g - n[0] * h, l = p + n[1] * h, u() } function u() { return s && (s.valid = !1, s = null), t } var i, o, a, c, l, s, f = me(function (n, t) { return n = i(n, t), [n[0] * h + c, l - n[1] * h] }), h = 150, g = 480, p = 250, d = 0, v = 0, m = 0, y = 0, M = 0, x = Xa, b = pt, _ = null, w = null; return t.stream = function (n) { return s && (s.valid = !1), s = _e(o, x(f(b(n)))), s.valid = !0, s }, t.clipAngle = function (n) { return arguments.length ? (x = null == n ? (_ = n, Xa) : ee((_ = +n) * Jo), u()) : _ }, t.clipExtent = function (n) { return arguments.length ? (w = n, b = n ? re(n[0][0], n[0][1], n[1][0], n[1][1]) : pt, u()) : w }, t.scale = function (n) { return arguments.length ? (h = +n, r()) : h }, t.translate = function (n) { return arguments.length ? (g = +n[0], p = +n[1], r()) : [g, p] }, t.center = function (n) { return arguments.length ? (d = n[0] % 360 * Jo, v = n[1] % 360 * Jo, r()) : [d * Go, v * Go] }, t.rotate = function (n) { return arguments.length ? (m = n[0] % 360 * Jo, y = n[1] % 360 * Jo, M = n.length > 2 ? n[2] % 360 * Jo : 0, r()) : [m * Go, y * Go, M * Go] }, vo.rebind(t, f, "precision"), function () { return i = n.apply(this, arguments), t.invert = i.invert && e, r() } } function _e(n, t) { var e = new ye(t); return e.point = function (e, r) { r = n(e * Jo, r * Jo), e = r[0], t.point(e > Bo ? e - 2 * Bo : -Bo > e ? e + 2 * Bo : e, r[1]) }, e } function we(n, t) { return [n, t] } function Se(n, t, e) { return n ? t || e ? ie(ke(n), Ae(t, e)) : ke(n) : t || e ? Ae(t, e) : we } function Ee(n) { return function (t, e) { return t += n, [t > Bo ? t - 2 * Bo : -Bo > t ? t + 2 * Bo : t, e] } } function ke(n) { var t = Ee(n); return t.invert = Ee(-n), t } function Ae(n, t) { function e(n, t) { var e = Math.cos(t), a = Math.cos(n) * e, c = Math.sin(n) * e, l = Math.sin(t), s = l * r + a * u; return [Math.atan2(c * i - s * o, a * r - l * u), P(s * i + c * o)] } var r = Math.cos(n), u = Math.sin(n), i = Math.cos(t), o = Math.sin(t); return e.invert = function (n, t) { var e = Math.cos(t), a = Math.cos(n) * e, c = Math.sin(n) * e, l = Math.sin(t), s = l * i - c * o; return [Math.atan2(c * i + l * o, a * r + s * u), P(s * r - a * u)] }, e } function Ne(n, t) { var e = Math.cos(n), r = Math.sin(n); return function (u, i, o, a) { var c = o * t; null != u ? (u = qe(e, u), i = qe(e, i), (o > 0 ? i > u : u > i) && (u += 2 * o * Bo)) : (u = n + 2 * o * Bo, i = n - .5 * c); for (var l, s = u; o > 0 ? s > i : i > s; s -= c)a.point((l = Ft([e, -r * Math.cos(s), -r * Math.sin(s)]))[0], l[1]) } } function qe(n, t) { var e = zt(t); e[0] -= n, Ht(e); var r = F(-e[1]); return ((-e[2] < 0 ? -r : r) + 2 * Math.PI - $o) % (2 * Math.PI) } function Te(n, t, e) { var r = vo.range(n, t - $o, e).concat(t); return function (n) { return r.map(function (t) { return [n, t] }) } } function ze(n, t, e) { var r = vo.range(n, t - $o, e).concat(t); return function (n) { return r.map(function (t) { return [t, n] }) } } function Ce(n) { return n.source } function De(n) { return n.target } function je(n, t, e, r) { var u = Math.cos(t), i = Math.sin(t), o = Math.cos(r), a = Math.sin(r), c = u * Math.cos(n), l = u * Math.sin(n), s = o * Math.cos(e), f = o * Math.sin(e), h = 2 * Math.asin(Math.sqrt(I(r - t) + u * o * I(e - n))), g = 1 / Math.sin(h), p = h ? function (n) { var t = Math.sin(n *= h) * g, e = Math.sin(h - n) * g, r = e * c + t * s, u = e * l + t * f, o = e * i + t * a; return [Math.atan2(u, r) * Go, Math.atan2(o, Math.sqrt(r * r + u * u)) * Go] } : function () { return [n * Go, t * Go] }; return p.distance = h, p } function Le() { function n(n, u) { var i = Math.sin(u *= Jo), o = Math.cos(u), a = Math.abs((n *= Jo) - t), c = Math.cos(a); uc += Math.atan2(Math.sqrt((a = o * Math.sin(a)) * a + (a = r * i - e * o * c) * a), e * i + r * o * c), t = n, e = i, r = o } var t, e, r; ic.point = function (u, i) { t = u * Jo, e = Math.sin(i *= Jo), r = Math.cos(i), ic.point = n }, ic.lineEnd = function () { ic.point = ic.lineEnd = c } } function He(n, t) { function e(t, e) { var r = Math.cos(t), u = Math.cos(e), i = n(r * u); return [i * u * Math.sin(t), i * Math.sin(e)] } return e.invert = function (n, e) { var r = Math.sqrt(n * n + e * e), u = t(r), i = Math.sin(u), o = Math.cos(u); return [Math.atan2(n * i, r * o), Math.asin(r && e * i / r)] }, e } function Fe(n, t) { function e(n, t) { var e = Math.abs(Math.abs(t) - Bo / 2) < $o ? 0 : o / Math.pow(u(t), i); return [e * Math.sin(i * n), o - e * Math.cos(i * n)] } var r = Math.cos(n), u = function (n) { return Math.tan(Bo / 4 + n / 2) }, i = n === t ? Math.sin(n) : Math.log(r / Math.cos(t)) / Math.log(u(t) / u(n)), o = r * Math.pow(u(n), i) / i; return i ? (e.invert = function (n, t) { var e = o - t, r = H(i) * Math.sqrt(n * n + e * e); return [Math.atan2(n, e) / i, 2 * Math.atan(Math.pow(o / r, 1 / i)) - Bo / 2] }, e) : Oe } function Pe(n, t) { function e(n, t) { var e = i - t; return [e * Math.sin(u * n), i - e * Math.cos(u * n)] } var r = Math.cos(n), u = n === t ? Math.sin(n) : (r - Math.cos(t)) / (t - n), i = r / u + n; return Math.abs(u) < $o ? we : (e.invert = function (n, t) { var e = i - t; return [Math.atan2(n, e) / u, i - H(u) * Math.sqrt(n * n + e * e)] }, e) } function Oe(n, t) { return [n, Math.log(Math.tan(Bo / 4 + t / 2))] } function Re(n) { var t, e = xe(n), r = e.scale, u = e.translate, i = e.clipExtent; return e.scale = function () { var n = r.apply(e, arguments); return n === e ? t ? e.clipExtent(null) : e : n }, e.translate = function () { var n = u.apply(e, arguments); return n === e ? t ? e.clipExtent(null) : e : n }, e.clipExtent = function (n) { var o = i.apply(e, arguments); if (o === e) { if (t = null == n) { var a = Bo * r(), c = u(); i([[c[0] - a, c[1] - a], [c[0] + a, c[1] + a]]) } } else t && (o = null); return o }, e.clipExtent(null) } function Ye(n, t) { var e = Math.cos(t) * Math.sin(n); return [Math.log((1 + e) / (1 - e)) / 2, Math.atan2(Math.tan(t), Math.cos(n))] } function Ie(n) { function t(t) { function o() { l.push("M", i(n(s), a)) } for (var c, l = [], s = [], f = -1, h = t.length, g = gt(e), p = gt(r); ++f < h;)u.call(this, c = t[f], f) ? s.push([+g.call(this, c, f), +p.call(this, c, f)]) : s.length && (o(), s = []); return s.length && o(), l.length ? l.join("") : null } var e = Ue, r = Ve, u = Vt, i = Ze, o = i.key, a = .7; return t.x = function (n) { return arguments.length ? (e = n, t) : e }, t.y = function (n) { return arguments.length ? (r = n, t) : r }, t.defined = function (n) { return arguments.length ? (u = n, t) : u }, t.interpolate = function (n) { return arguments.length ? (o = "function" == typeof n ? i = n : (i = fc.get(n) || Ze).key, t) : o }, t.tension = function (n) { return arguments.length ? (a = n, t) : a }, t } function Ue(n) { return n[0] } function Ve(n) { return n[1] } function Ze(n) { return n.join("L") } function Xe(n) { return Ze(n) + "Z" } function Be(n) { for (var t = 0, e = n.length, r = n[0], u = [r[0], ",", r[1]]; ++t < e;)u.push("H", (r[0] + (r = n[t])[0]) / 2, "V", r[1]); return e > 1 && u.push("H", r[0]), u.join("") } function $e(n) { for (var t = 0, e = n.length, r = n[0], u = [r[0], ",", r[1]]; ++t < e;)u.push("V", (r = n[t])[1], "H", r[0]); return u.join("") } function We(n) { for (var t = 0, e = n.length, r = n[0], u = [r[0], ",", r[1]]; ++t < e;)u.push("H", (r = n[t])[0], "V", r[1]); return u.join("") } function Je(n, t) { return n.length < 4 ? Ze(n) : n[1] + Qe(n.slice(1, n.length - 1), nr(n, t)) } function Ge(n, t) { return n.length < 3 ? Ze(n) : n[0] + Qe((n.push(n[0]), n), nr([n[n.length - 2]].concat(n, [n[1]]), t)) } function Ke(n, t) { return n.length < 3 ? Ze(n) : n[0] + Qe(n, nr(n, t)) } function Qe(n, t) { if (t.length < 1 || n.length != t.length && n.length != t.length + 2) return Ze(n); var e = n.length != t.length, r = "", u = n[0], i = n[1], o = t[0], a = o, c = 1; if (e && (r += "Q" + (i[0] - 2 * o[0] / 3) + "," + (i[1] - 2 * o[1] / 3) + "," + i[0] + "," + i[1], u = n[1], c = 2), t.length > 1) { a = t[1], i = n[c], c++ , r += "C" + (u[0] + o[0]) + "," + (u[1] + o[1]) + "," + (i[0] - a[0]) + "," + (i[1] - a[1]) + "," + i[0] + "," + i[1]; for (var l = 2; l < t.length; l++ , c++)i = n[c], a = t[l], r += "S" + (i[0] - a[0]) + "," + (i[1] - a[1]) + "," + i[0] + "," + i[1] } if (e) { var s = n[c]; r += "Q" + (i[0] + 2 * a[0] / 3) + "," + (i[1] + 2 * a[1] / 3) + "," + s[0] + "," + s[1] } return r } function nr(n, t) { for (var e, r = [], u = (1 - t) / 2, i = n[0], o = n[1], a = 1, c = n.length; ++a < c;)e = i, i = o, o = n[a], r.push([u * (o[0] - e[0]), u * (o[1] - e[1])]); return r } function tr(n) { if (n.length < 3) return Ze(n); var t = 1, e = n.length, r = n[0], u = r[0], i = r[1], o = [u, u, u, (r = n[1])[0]], a = [i, i, i, r[1]], c = [u, ",", i, "L", ir(pc, o), ",", ir(pc, a)]; for (n.push(n[e - 1]); ++t <= e;)r = n[t], o.shift(), o.push(r[0]), a.shift(), a.push(r[1]), or(c, o, a); return n.pop(), c.push("L", r), c.join("") } function er(n) { if (n.length < 4) return Ze(n); for (var t, e = [], r = -1, u = n.length, i = [0], o = [0]; ++r < 3;)t = n[r], i.push(t[0]), o.push(t[1]); for (e.push(ir(pc, i) + "," + ir(pc, o)), --r; ++r < u;)t = n[r], i.shift(), i.push(t[0]), o.shift(), o.push(t[1]), or(e, i, o); return e.join("") } function rr(n) { for (var t, e, r = -1, u = n.length, i = u + 4, o = [], a = []; ++r < 4;)e = n[r % u], o.push(e[0]), a.push(e[1]); for (t = [ir(pc, o), ",", ir(pc, a)], --r; ++r < i;)e = n[r % u], o.shift(), o.push(e[0]), a.shift(), a.push(e[1]), or(t, o, a); return t.join("") } function ur(n, t) { var e = n.length - 1; if (e) for (var r, u, i = n[0][0], o = n[0][1], a = n[e][0] - i, c = n[e][1] - o, l = -1; ++l <= e;)r = n[l], u = l / e, r[0] = t * r[0] + (1 - t) * (i + u * a), r[1] = t * r[1] + (1 - t) * (o + u * c); return tr(n) } function ir(n, t) { return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] + n[3] * t[3] } function or(n, t, e) { n.push("C", ir(hc, t), ",", ir(hc, e), ",", ir(gc, t), ",", ir(gc, e), ",", ir(pc, t), ",", ir(pc, e)) } function ar(n, t) { return (t[1] - n[1]) / (t[0] - n[0]) } function cr(n) { for (var t = 0, e = n.length - 1, r = [], u = n[0], i = n[1], o = r[0] = ar(u, i); ++t < e;)r[t] = (o + (o = ar(u = i, i = n[t + 1]))) / 2; return r[t] = o, r } function lr(n) {
29
- for (var t, e, r, u, i = [], o = cr(n), a = -1, c = n.length - 1; ++a < c;)t = ar(n[a], n[a + 1]), Math.abs(t) < 1e-6 ? o[a] = o[a + 1] = 0 : (e = o[a] / t, r = o[a + 1] / t, u = e * e + r * r, u > 9 && (u = 3 * t / Math.sqrt(u), o[a] = u * e, o[a + 1] = u * r));
30
- for (a = -1; ++a <= c;)u = (n[Math.min(c, a + 1)][0] - n[Math.max(0, a - 1)][0]) / (6 * (1 + o[a] * o[a])), i.push([u || 0, o[a] * u || 0]); return i
31
- } function sr(n) { return n.length < 3 ? Ze(n) : n[0] + Qe(n, lr(n)) } function fr(n, t, e, r) { var u, i, o, a, c, l, s; return u = r[n], i = u[0], o = u[1], u = r[t], a = u[0], c = u[1], u = r[e], l = u[0], s = u[1], (s - o) * (a - i) - (c - o) * (l - i) > 0 } function hr(n, t, e) { return (e[0] - t[0]) * (n[1] - t[1]) < (e[1] - t[1]) * (n[0] - t[0]) } function gr(n, t, e, r) { var u = n[0], i = e[0], o = t[0] - u, a = r[0] - i, c = n[1], l = e[1], s = t[1] - c, f = r[1] - l, h = (a * (c - l) - f * (u - i)) / (f * o - a * s); return [u + h * o, c + h * s] } function pr(n) { var t = n[0], e = n[n.length - 1]; return !(t[0] - e[0] || t[1] - e[1]) } function dr(n, t) { var e = { list: n.map(function (n, t) { return { index: t, x: n[0], y: n[1] } }).sort(function (n, t) { return n.y < t.y ? -1 : n.y > t.y ? 1 : n.x < t.x ? -1 : n.x > t.x ? 1 : 0 }), bottomSite: null }, r = { list: [], leftEnd: null, rightEnd: null, init: function () { r.leftEnd = r.createHalfEdge(null, "l"), r.rightEnd = r.createHalfEdge(null, "l"), r.leftEnd.r = r.rightEnd, r.rightEnd.l = r.leftEnd, r.list.unshift(r.leftEnd, r.rightEnd) }, createHalfEdge: function (n, t) { return { edge: n, side: t, vertex: null, l: null, r: null } }, insert: function (n, t) { t.l = n, t.r = n.r, n.r.l = t, n.r = t }, leftBound: function (n) { var t = r.leftEnd; do t = t.r; while (t != r.rightEnd && u.rightOf(t, n)); return t = t.l }, del: function (n) { n.l.r = n.r, n.r.l = n.l, n.edge = null }, right: function (n) { return n.r }, left: function (n) { return n.l }, leftRegion: function (n) { return null == n.edge ? e.bottomSite : n.edge.region[n.side] }, rightRegion: function (n) { return null == n.edge ? e.bottomSite : n.edge.region[vc[n.side]] } }, u = { bisect: function (n, t) { var e = { region: { l: n, r: t }, ep: { l: null, r: null } }, r = t.x - n.x, u = t.y - n.y, i = r > 0 ? r : -r, o = u > 0 ? u : -u; return e.c = n.x * r + n.y * u + .5 * (r * r + u * u), i > o ? (e.a = 1, e.b = u / r, e.c /= r) : (e.b = 1, e.a = r / u, e.c /= u), e }, intersect: function (n, t) { var e = n.edge, r = t.edge; if (!e || !r || e.region.r == r.region.r) return null; var u = e.a * r.b - e.b * r.a; if (Math.abs(u) < 1e-10) return null; var i, o, a = (e.c * r.b - r.c * e.b) / u, c = (r.c * e.a - e.c * r.a) / u, l = e.region.r, s = r.region.r; l.y < s.y || l.y == s.y && l.x < s.x ? (i = n, o = e) : (i = t, o = r); var f = a >= o.region.r.x; return f && "l" === i.side || !f && "r" === i.side ? null : { x: a, y: c } }, rightOf: function (n, t) { var e = n.edge, r = e.region.r, u = t.x > r.x; if (u && "l" === n.side) return 1; if (!u && "r" === n.side) return 0; if (1 === e.a) { var i = t.y - r.y, o = t.x - r.x, a = 0, c = 0; if (!u && e.b < 0 || u && e.b >= 0 ? c = a = i >= e.b * o : (c = t.x + t.y * e.b > e.c, e.b < 0 && (c = !c), c || (a = 1)), !a) { var l = r.x - e.region.l.x; c = e.b * (o * o - i * i) < l * i * (1 + 2 * o / l + e.b * e.b), e.b < 0 && (c = !c) } } else { var s = e.c - e.a * t.x, f = t.y - s, h = t.x - r.x, g = s - r.y; c = f * f > h * h + g * g } return "l" === n.side ? c : !c }, endPoint: function (n, e, r) { n.ep[e] = r, n.ep[vc[e]] && t(n) }, distance: function (n, t) { var e = n.x - t.x, r = n.y - t.y; return Math.sqrt(e * e + r * r) } }, i = { list: [], insert: function (n, t, e) { n.vertex = t, n.ystar = t.y + e; for (var r = 0, u = i.list, o = u.length; o > r; r++) { var a = u[r]; if (!(n.ystar > a.ystar || n.ystar == a.ystar && t.x > a.vertex.x)) break } u.splice(r, 0, n) }, del: function (n) { for (var t = 0, e = i.list, r = e.length; r > t && e[t] != n; ++t); e.splice(t, 1) }, empty: function () { return 0 === i.list.length }, nextEvent: function (n) { for (var t = 0, e = i.list, r = e.length; r > t; ++t)if (e[t] == n) return e[t + 1]; return null }, min: function () { var n = i.list[0]; return { x: n.vertex.x, y: n.ystar } }, extractMin: function () { return i.list.shift() } }; r.init(), e.bottomSite = e.list.shift(); for (var o, a, c, l, s, f, h, g, p, d, v, m, y, M = e.list.shift(); ;)if (i.empty() || (o = i.min()), M && (i.empty() || M.y < o.y || M.y == o.y && M.x < o.x)) a = r.leftBound(M), c = r.right(a), h = r.rightRegion(a), m = u.bisect(h, M), f = r.createHalfEdge(m, "l"), r.insert(a, f), d = u.intersect(a, f), d && (i.del(a), i.insert(a, d, u.distance(d, M))), a = f, f = r.createHalfEdge(m, "r"), r.insert(a, f), d = u.intersect(f, c), d && i.insert(f, d, u.distance(d, M)), M = e.list.shift(); else { if (i.empty()) break; a = i.extractMin(), l = r.left(a), c = r.right(a), s = r.right(c), h = r.leftRegion(a), g = r.rightRegion(c), v = a.vertex, u.endPoint(a.edge, a.side, v), u.endPoint(c.edge, c.side, v), r.del(a), i.del(c), r.del(c), y = "l", h.y > g.y && (p = h, h = g, g = p, y = "r"), m = u.bisect(h, g), f = r.createHalfEdge(m, y), r.insert(l, f), u.endPoint(m, vc[y], v), d = u.intersect(l, f), d && (i.del(l), i.insert(l, d, u.distance(d, h))), d = u.intersect(f, s), d && i.insert(f, d, u.distance(d, h)) } for (a = r.right(r.leftEnd); a != r.rightEnd; a = r.right(a))t(a.edge) } function vr(n) { return n.x } function mr(n) { return n.y } function yr() { return { leaf: !0, nodes: [], point: null, x: null, y: null } } function Mr(n, t, e, r, u, i) { if (!n(t, e, r, u, i)) { var o = .5 * (e + u), a = .5 * (r + i), c = t.nodes; c[0] && Mr(n, c[0], e, r, o, a), c[1] && Mr(n, c[1], o, r, u, a), c[2] && Mr(n, c[2], e, a, o, i), c[3] && Mr(n, c[3], o, a, u, i) } } function xr(n, t) { n = vo.rgb(n), t = vo.rgb(t); var e = n.r, r = n.g, u = n.b, i = t.r - e, o = t.g - r, a = t.b - u; return function (n) { return "#" + at(Math.round(e + i * n)) + at(Math.round(r + o * n)) + at(Math.round(u + a * n)) } } function br(n, t) { var e, r = {}, u = {}; for (e in n) e in t ? r[e] = Sr(n[e], t[e]) : u[e] = n[e]; for (e in t) e in n || (u[e] = t[e]); return function (n) { for (e in r) u[e] = r[e](n); return u } } function _r(n, t) { return t -= n = +n, function (e) { return n + t * e } } function wr(n, t) { var e, r, u, i, o, a = 0, c = 0, l = [], s = []; for (n += "", t += "", mc.lastIndex = 0, r = 0; e = mc.exec(t); ++r)e.index && l.push(t.substring(a, c = e.index)), s.push({ i: l.length, x: e[0] }), l.push(null), a = mc.lastIndex; for (a < t.length && l.push(t.substring(a)), r = 0, i = s.length; (e = mc.exec(n)) && i > r; ++r)if (o = s[r], o.x == e[0]) { if (o.i) if (null == l[o.i + 1]) for (l[o.i - 1] += o.x, l.splice(o.i, 1), u = r + 1; i > u; ++u)s[u].i--; else for (l[o.i - 1] += o.x + l[o.i + 1], l.splice(o.i, 2), u = r + 1; i > u; ++u)s[u].i -= 2; else if (null == l[o.i + 1]) l[o.i] = o.x; else for (l[o.i] = o.x + l[o.i + 1], l.splice(o.i + 1, 1), u = r + 1; i > u; ++u)s[u].i--; s.splice(r, 1), i-- , r-- } else o.x = _r(parseFloat(e[0]), parseFloat(o.x)); for (; i > r;)o = s.pop(), null == l[o.i + 1] ? l[o.i] = o.x : (l[o.i] = o.x + l[o.i + 1], l.splice(o.i + 1, 1)), i--; return 1 === l.length ? null == l[0] ? (o = s[0].x, function (n) { return o(n) + "" }) : function () { return t } : function (n) { for (r = 0; i > r; ++r)l[(o = s[r]).i] = o.x(n); return l.join("") } } function Sr(n, t) { for (var e, r = vo.interpolators.length; --r >= 0 && !(e = vo.interpolators[r](n, t));); return e } function Er(n, t) { var e, r = [], u = [], i = n.length, o = t.length, a = Math.min(n.length, t.length); for (e = 0; a > e; ++e)r.push(Sr(n[e], t[e])); for (; i > e; ++e)u[e] = n[e]; for (; o > e; ++e)u[e] = t[e]; return function (n) { for (e = 0; a > e; ++e)u[e] = r[e](n); return u } } function kr(n) { return function (t) { return 0 >= t ? 0 : t >= 1 ? 1 : n(t) } } function Ar(n) { return function (t) { return 1 - n(1 - t) } } function Nr(n) { return function (t) { return .5 * (.5 > t ? n(2 * t) : 2 - n(2 - 2 * t)) } } function qr(n) { return n * n } function Tr(n) { return n * n * n } function zr(n) { if (0 >= n) return 0; if (n >= 1) return 1; var t = n * n, e = t * n; return 4 * (.5 > n ? e : 3 * (n - t) + e - .75) } function Cr(n) { return function (t) { return Math.pow(t, n) } } function Dr(n) { return 1 - Math.cos(n * Bo / 2) } function jr(n) { return Math.pow(2, 10 * (n - 1)) } function Lr(n) { return 1 - Math.sqrt(1 - n * n) } function Hr(n, t) { var e; return arguments.length < 2 && (t = .45), arguments.length ? e = t / (2 * Bo) * Math.asin(1 / n) : (n = 1, e = t / 4), function (r) { return 1 + n * Math.pow(2, 10 * -r) * Math.sin(2 * (r - e) * Bo / t) } } function Fr(n) { return n || (n = 1.70158), function (t) { return t * t * ((n + 1) * t - n) } } function Pr(n) { return 1 / 2.75 > n ? 7.5625 * n * n : 2 / 2.75 > n ? 7.5625 * (n -= 1.5 / 2.75) * n + .75 : 2.5 / 2.75 > n ? 7.5625 * (n -= 2.25 / 2.75) * n + .9375 : 7.5625 * (n -= 2.625 / 2.75) * n + .984375 } function Or(n, t) { n = vo.hcl(n), t = vo.hcl(t); var e = n.h, r = n.c, u = n.l, i = t.h - e, o = t.c - r, a = t.l - u; return isNaN(o) && (o = 0, r = isNaN(r) ? t.c : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), function (n) { return W(e + i * n, r + o * n, u + a * n) + "" } } function Rr(n, t) { n = vo.hsl(n), t = vo.hsl(t); var e = n.h, r = n.s, u = n.l, i = t.h - e, o = t.s - r, a = t.l - u; return isNaN(o) && (o = 0, r = isNaN(r) ? t.s : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), function (n) { return X(e + i * n, r + o * n, u + a * n) + "" } } function Yr(n, t) { n = vo.lab(n), t = vo.lab(t); var e = n.l, r = n.a, u = n.b, i = t.l - e, o = t.a - r, a = t.b - u; return function (n) { return K(e + i * n, r + o * n, u + a * n) + "" } } function Ir(n, t) { return t -= n, function (e) { return Math.round(n + t * e) } } function Ur(n) { var t = [n.a, n.b], e = [n.c, n.d], r = Zr(t), u = Vr(t, e), i = Zr(Xr(e, t, -u)) || 0; t[0] * e[1] < e[0] * t[1] && (t[0] *= -1, t[1] *= -1, r *= -1, u *= -1), this.rotate = (r ? Math.atan2(t[1], t[0]) : Math.atan2(-e[0], e[1])) * Go, this.translate = [n.e, n.f], this.scale = [r, i], this.skew = i ? Math.atan2(u, i) * Go : 0 } function Vr(n, t) { return n[0] * t[0] + n[1] * t[1] } function Zr(n) { var t = Math.sqrt(Vr(n, n)); return t && (n[0] /= t, n[1] /= t), t } function Xr(n, t, e) { return n[0] += e * t[0], n[1] += e * t[1], n } function Br(n, t) { var e, r = [], u = [], i = vo.transform(n), o = vo.transform(t), a = i.translate, c = o.translate, l = i.rotate, s = o.rotate, f = i.skew, h = o.skew, g = i.scale, p = o.scale; return a[0] != c[0] || a[1] != c[1] ? (r.push("translate(", null, ",", null, ")"), u.push({ i: 1, x: _r(a[0], c[0]) }, { i: 3, x: _r(a[1], c[1]) })) : c[0] || c[1] ? r.push("translate(" + c + ")") : r.push(""), l != s ? (l - s > 180 ? s += 360 : s - l > 180 && (l += 360), u.push({ i: r.push(r.pop() + "rotate(", null, ")") - 2, x: _r(l, s) })) : s && r.push(r.pop() + "rotate(" + s + ")"), f != h ? u.push({ i: r.push(r.pop() + "skewX(", null, ")") - 2, x: _r(f, h) }) : h && r.push(r.pop() + "skewX(" + h + ")"), g[0] != p[0] || g[1] != p[1] ? (e = r.push(r.pop() + "scale(", null, ",", null, ")"), u.push({ i: e - 4, x: _r(g[0], p[0]) }, { i: e - 2, x: _r(g[1], p[1]) })) : (1 != p[0] || 1 != p[1]) && r.push(r.pop() + "scale(" + p + ")"), e = u.length, function (n) { for (var t, i = -1; ++i < e;)r[(t = u[i]).i] = t.x(n); return r.join("") } } function $r(n, t) { return t = t - (n = +n) ? 1 / (t - n) : 0, function (e) { return (e - n) * t } } function Wr(n, t) { return t = t - (n = +n) ? 1 / (t - n) : 0, function (e) { return Math.max(0, Math.min(1, (e - n) * t)) } } function Jr(n) { for (var t = n.source, e = n.target, r = Kr(t, e), u = [t]; t !== r;)t = t.parent, u.push(t); for (var i = u.length; e !== r;)u.splice(i, 0, e), e = e.parent; return u } function Gr(n) { for (var t = [], e = n.parent; null != e;)t.push(n), n = e, e = e.parent; return t.push(n), t } function Kr(n, t) { if (n === t) return n; for (var e = Gr(n), r = Gr(t), u = e.pop(), i = r.pop(), o = null; u === i;)o = u, u = e.pop(), i = r.pop(); return o } function Qr(n) { n.fixed |= 2 } function nu(n) { n.fixed &= -7 } function tu(n) { n.fixed |= 4, n.px = n.x, n.py = n.y } function eu(n) { n.fixed &= -5 } function ru(n, t, e) { var r = 0, u = 0; if (n.charge = 0, !n.leaf) for (var i, o = n.nodes, a = o.length, c = -1; ++c < a;)i = o[c], null != i && (ru(i, t, e), n.charge += i.charge, r += i.charge * i.cx, u += i.charge * i.cy); if (n.point) { n.leaf || (n.point.x += Math.random() - .5, n.point.y += Math.random() - .5); var l = t * e[n.point.index]; n.charge += n.pointCharge = l, r += l * n.point.x, u += l * n.point.y } n.cx = r / n.charge, n.cy = u / n.charge } function uu(n, t) { return vo.rebind(n, t, "sort", "children", "value"), n.nodes = n, n.links = cu, n } function iu(n) { return n.children } function ou(n) { return n.value } function au(n, t) { return t.value - n.value } function cu(n) { return vo.merge(n.map(function (n) { return (n.children || []).map(function (t) { return { source: n, target: t } }) })) } function lu(n) { return n.x } function su(n) { return n.y } function fu(n, t, e) { n.y0 = t, n.y = e } function hu(n) { return vo.range(n.length) } function gu(n) { for (var t = -1, e = n[0].length, r = []; ++t < e;)r[t] = 0; return r } function pu(n) { for (var t, e = 1, r = 0, u = n[0][1], i = n.length; i > e; ++e)(t = n[e][1]) > u && (r = e, u = t); return r } function du(n) { return n.reduce(vu, 0) } function vu(n, t) { return n + t[1] } function mu(n, t) { return yu(n, Math.ceil(Math.log(t.length) / Math.LN2 + 1)) } function yu(n, t) { for (var e = -1, r = +n[0], u = (n[1] - r) / t, i = []; ++e <= t;)i[e] = u * e + r; return i } function Mu(n) { return [vo.min(n), vo.max(n)] } function xu(n, t) { return n.parent == t.parent ? 1 : 2 } function bu(n) { var t = n.children; return t && t.length ? t[0] : n._tree.thread } function _u(n) { var t, e = n.children; return e && (t = e.length) ? e[t - 1] : n._tree.thread } function wu(n, t) { var e = n.children; if (e && (u = e.length)) for (var r, u, i = -1; ++i < u;)t(r = wu(e[i], t), n) > 0 && (n = r); return n } function Su(n, t) { return n.x - t.x } function Eu(n, t) { return t.x - n.x } function ku(n, t) { return n.depth - t.depth } function Au(n, t) { function e(n, r) { var u = n.children; if (u && (o = u.length)) for (var i, o, a = null, c = -1; ++c < o;)i = u[c], e(i, a), a = i; t(n, r) } e(n, null) } function Nu(n) { for (var t, e = 0, r = 0, u = n.children, i = u.length; --i >= 0;)t = u[i]._tree, t.prelim += e, t.mod += e, e += t.shift + (r += t.change) } function qu(n, t, e) { n = n._tree, t = t._tree; var r = e / (t.number - n.number); n.change += r, t.change -= r, t.shift += e, t.prelim += e, t.mod += e } function Tu(n, t, e) { return n._tree.ancestor.parent == t.parent ? n._tree.ancestor : e } function zu(n, t) { return n.value - t.value } function Cu(n, t) { var e = n._pack_next; n._pack_next = t, t._pack_prev = n, t._pack_next = e, e._pack_prev = t } function Du(n, t) { n._pack_next = t, t._pack_prev = n } function ju(n, t) { var e = t.x - n.x, r = t.y - n.y, u = n.r + t.r; return .999 * u * u > e * e + r * r } function Lu(n) { function t(n) { s = Math.min(n.x - n.r, s), f = Math.max(n.x + n.r, f), h = Math.min(n.y - n.r, h), g = Math.max(n.y + n.r, g) } if ((e = n.children) && (l = e.length)) { var e, r, u, i, o, a, c, l, s = 1 / 0, f = -1 / 0, h = 1 / 0, g = -1 / 0; if (e.forEach(Hu), r = e[0], r.x = -r.r, r.y = 0, t(r), l > 1 && (u = e[1], u.x = u.r, u.y = 0, t(u), l > 2)) for (i = e[2], Ou(r, u, i), t(i), Cu(r, i), r._pack_prev = i, Cu(i, u), u = r._pack_next, o = 3; l > o; o++) { Ou(r, u, i = e[o]); var p = 0, d = 1, v = 1; for (a = u._pack_next; a !== u; a = a._pack_next, d++)if (ju(a, i)) { p = 1; break } if (1 == p) for (c = r._pack_prev; c !== a._pack_prev && !ju(c, i); c = c._pack_prev, v++); p ? (v > d || d == v && u.r < r.r ? Du(r, u = a) : Du(r = c, u), o--) : (Cu(r, i), u = i, t(i)) } var m = (s + f) / 2, y = (h + g) / 2, M = 0; for (o = 0; l > o; o++)i = e[o], i.x -= m, i.y -= y, M = Math.max(M, i.r + Math.sqrt(i.x * i.x + i.y * i.y)); n.r = M, e.forEach(Fu) } } function Hu(n) { n._pack_next = n._pack_prev = n } function Fu(n) { delete n._pack_next, delete n._pack_prev } function Pu(n, t, e, r) { var u = n.children; if (n.x = t += r * n.x, n.y = e += r * n.y, n.r *= r, u) for (var i = -1, o = u.length; ++i < o;)Pu(u[i], t, e, r) } function Ou(n, t, e) { var r = n.r + e.r, u = t.x - n.x, i = t.y - n.y; if (r && (u || i)) { var o = t.r + e.r, a = u * u + i * i; o *= o, r *= r; var c = .5 + (r - o) / (2 * a), l = Math.sqrt(Math.max(0, 2 * o * (r + a) - (r -= a) * r - o * o)) / (2 * a); e.x = n.x + c * u + l * i, e.y = n.y + c * i - l * u } else e.x = n.x + r, e.y = n.y } function Ru(n) { return 1 + vo.max(n, function (n) { return n.y }) } function Yu(n) { return n.reduce(function (n, t) { return n + t.x }, 0) / n.length } function Iu(n) { var t = n.children; return t && t.length ? Iu(t[0]) : n } function Uu(n) { var t, e = n.children; return e && (t = e.length) ? Uu(e[t - 1]) : n } function Vu(n) { return { x: n.x, y: n.y, dx: n.dx, dy: n.dy } } function Zu(n, t) { var e = n.x + t[3], r = n.y + t[0], u = n.dx - t[1] - t[3], i = n.dy - t[0] - t[2]; return 0 > u && (e += u / 2, u = 0), 0 > i && (r += i / 2, i = 0), { x: e, y: r, dx: u, dy: i } } function Xu(n) { var t = n[0], e = n[n.length - 1]; return e > t ? [t, e] : [e, t] } function Bu(n) { return n.rangeExtent ? n.rangeExtent() : Xu(n.range()) } function $u(n, t, e, r) { var u = e(n[0], n[1]), i = r(t[0], t[1]); return function (n) { return i(u(n)) } } function Wu(n, t) { var e, r = 0, u = n.length - 1, i = n[r], o = n[u]; return i > o && (e = r, r = u, u = e, e = i, i = o, o = e), n[r] = t.floor(i), n[u] = t.ceil(o), n } function Ju(n) { return n ? { floor: function (t) { return Math.floor(t / n) * n }, ceil: function (t) { return Math.ceil(t / n) * n } } : Ac } function Gu(n, t, e, r) { var u = [], i = [], o = 0, a = Math.min(n.length, t.length) - 1; for (n[a] < n[0] && (n = n.slice().reverse(), t = t.slice().reverse()); ++o <= a;)u.push(e(n[o - 1], n[o])), i.push(r(t[o - 1], t[o])); return function (t) { var e = vo.bisect(n, t, 1, a) - 1; return i[e](u[e](t)) } } function Ku(n, t, e, r) { function u() { var u = Math.min(n.length, t.length) > 2 ? Gu : $u, c = r ? Wr : $r; return o = u(n, t, c, e), a = u(t, n, c, Sr), i } function i(n) { return o(n) } var o, a; return i.invert = function (n) { return a(n) }, i.domain = function (t) { return arguments.length ? (n = t.map(Number), u()) : n }, i.range = function (n) { return arguments.length ? (t = n, u()) : t }, i.rangeRound = function (n) { return i.range(n).interpolate(Ir) }, i.clamp = function (n) { return arguments.length ? (r = n, u()) : r }, i.interpolate = function (n) { return arguments.length ? (e = n, u()) : e }, i.ticks = function (t) { return ei(n, t) }, i.tickFormat = function (t, e) { return ri(n, t, e) }, i.nice = function (t) { return ni(n, t), u() }, i.copy = function () { return Ku(n, t, e, r) }, u() } function Qu(n, t) { return vo.rebind(n, t, "range", "rangeRound", "interpolate", "clamp") } function ni(n, t) { return Wu(n, Ju(ti(n, t)[2])) } function ti(n, t) { null == t && (t = 10); var e = Xu(n), r = e[1] - e[0], u = Math.pow(10, Math.floor(Math.log(r / t) / Math.LN10)), i = t / r * u; return .15 >= i ? u *= 10 : .35 >= i ? u *= 5 : .75 >= i && (u *= 2), e[0] = Math.ceil(e[0] / u) * u, e[1] = Math.floor(e[1] / u) * u + .5 * u, e[2] = u, e } function ei(n, t) { return vo.range.apply(vo, ti(n, t)) } function ri(n, t, e) { var r = -Math.floor(Math.log(ti(n, t)[2]) / Math.LN10 + .01); return vo.format(e ? e.replace(Sa, function (n, t, e, u, i, o, a, c, l, s) { return [t, e, u, i, o, a, c, l || "." + (r - 2 * ("%" === s)), s].join("") }) : ",." + r + "f") } function ui(n, t, e, r) { function u(n) { return (e ? Math.log(0 > n ? 0 : n) : -Math.log(n > 0 ? 0 : -n)) / Math.log(t) } function i(n) { return e ? Math.pow(t, n) : -Math.pow(t, -n) } function o(t) { return n(u(t)) } return o.invert = function (t) { return i(n.invert(t)) }, o.domain = function (t) { return arguments.length ? (e = t[0] >= 0, n.domain((r = t.map(Number)).map(u)), o) : r }, o.base = function (e) { return arguments.length ? (t = +e, n.domain(r.map(u)), o) : t }, o.nice = function () { var t = Wu(r.map(u), e ? Math : qc); return n.domain(t), r = t.map(i), o }, o.ticks = function () { var n = Xu(r), o = [], a = n[0], c = n[1], l = Math.floor(u(a)), s = Math.ceil(u(c)), f = t % 1 ? 2 : t; if (isFinite(s - l)) { if (e) { for (; s > l; l++)for (var h = 1; f > h; h++)o.push(i(l) * h); o.push(i(l)) } else for (o.push(i(l)); l++ < s;)for (var h = f - 1; h > 0; h--)o.push(i(l) * h); for (l = 0; o[l] < a; l++); for (s = o.length; o[s - 1] > c; s--); o = o.slice(l, s) } return o }, o.tickFormat = function (n, t) { if (!arguments.length) return Nc; arguments.length < 2 ? t = Nc : "function" != typeof t && (t = vo.format(t)); var r, a = Math.max(.1, n / o.ticks().length), c = e ? (r = 1e-12, Math.ceil) : (r = -1e-12, Math.floor); return function (n) { return n / i(c(u(n) + r)) <= a ? t(n) : "" } }, o.copy = function () { return ui(n.copy(), t, e, r) }, Qu(o, n) } function ii(n, t, e) { function r(t) { return n(u(t)) } var u = oi(t), i = oi(1 / t); return r.invert = function (t) { return i(n.invert(t)) }, r.domain = function (t) { return arguments.length ? (n.domain((e = t.map(Number)).map(u)), r) : e }, r.ticks = function (n) { return ei(e, n) }, r.tickFormat = function (n, t) { return ri(e, n, t) }, r.nice = function (n) { return r.domain(ni(e, n)) }, r.exponent = function (o) { return arguments.length ? (u = oi(t = o), i = oi(1 / t), n.domain(e.map(u)), r) : t }, r.copy = function () { return ii(n.copy(), t, e) }, Qu(r, n) } function oi(n) { return function (t) { return 0 > t ? -Math.pow(-t, n) : Math.pow(t, n) } } function ai(n, t) { function e(t) { return o[((i.get(t) || i.set(t, n.push(t))) - 1) % o.length] } function r(t, e) { return vo.range(n.length).map(function (n) { return t + e * n }) } var i, o, a; return e.domain = function (r) { if (!arguments.length) return n; n = [], i = new u; for (var o, a = -1, c = r.length; ++a < c;)i.has(o = r[a]) || i.set(o, n.push(o)); return e[t.t].apply(e, t.a) }, e.range = function (n) { return arguments.length ? (o = n, a = 0, t = { t: "range", a: arguments }, e) : o }, e.rangePoints = function (u, i) { arguments.length < 2 && (i = 0); var c = u[0], l = u[1], s = (l - c) / (Math.max(1, n.length - 1) + i); return o = r(n.length < 2 ? (c + l) / 2 : c + s * i / 2, s), a = 0, t = { t: "rangePoints", a: arguments }, e }, e.rangeBands = function (u, i, c) { arguments.length < 2 && (i = 0), arguments.length < 3 && (c = i); var l = u[1] < u[0], s = u[l - 0], f = u[1 - l], h = (f - s) / (n.length - i + 2 * c); return o = r(s + h * c, h), l && o.reverse(), a = h * (1 - i), t = { t: "rangeBands", a: arguments }, e }, e.rangeRoundBands = function (u, i, c) { arguments.length < 2 && (i = 0), arguments.length < 3 && (c = i); var l = u[1] < u[0], s = u[l - 0], f = u[1 - l], h = Math.floor((f - s) / (n.length - i + 2 * c)), g = f - s - (n.length - i) * h; return o = r(s + Math.round(g / 2), h), l && o.reverse(), a = Math.round(h * (1 - i)), t = { t: "rangeRoundBands", a: arguments }, e }, e.rangeBand = function () { return a }, e.rangeExtent = function () { return Xu(t.a[0]) }, e.copy = function () { return ai(n, t) }, e.domain(n) } function ci(n, t) { function e() { var e = 0, i = t.length; for (u = []; ++e < i;)u[e - 1] = vo.quantile(n, e / i); return r } function r(n) { return isNaN(n = +n) ? void 0 : t[vo.bisect(u, n)] } var u; return r.domain = function (t) { return arguments.length ? (n = t.filter(function (n) { return !isNaN(n) }).sort(vo.ascending), e()) : n }, r.range = function (n) { return arguments.length ? (t = n, e()) : t }, r.quantiles = function () { return u }, r.invertExtent = function (e) { return e = t.indexOf(e), 0 > e ? [0 / 0, 0 / 0] : [e > 0 ? u[e - 1] : n[0], e < u.length ? u[e] : n[n.length - 1]] }, r.copy = function () { return ci(n, t) }, e() } function li(n, t, e) { function r(t) { return e[Math.max(0, Math.min(o, Math.floor(i * (t - n))))] } function u() { return i = e.length / (t - n), o = e.length - 1, r } var i, o; return r.domain = function (e) { return arguments.length ? (n = +e[0], t = +e[e.length - 1], u()) : [n, t] }, r.range = function (n) { return arguments.length ? (e = n, u()) : e }, r.invertExtent = function (t) { return t = e.indexOf(t), t = 0 > t ? 0 / 0 : t / i + n, [t, t + 1 / i] }, r.copy = function () { return li(n, t, e) }, u() } function si(n, t) { function e(e) { return e >= e ? t[vo.bisect(n, e)] : void 0 } return e.domain = function (t) { return arguments.length ? (n = t, e) : n }, e.range = function (n) { return arguments.length ? (t = n, e) : t }, e.invertExtent = function (e) { return e = t.indexOf(e), [n[e - 1], n[e]] }, e.copy = function () { return si(n, t) }, e } function fi(n) { function t(n) { return +n } return t.invert = t, t.domain = t.range = function (e) { return arguments.length ? (n = e.map(t), t) : n }, t.ticks = function (t) { return ei(n, t) }, t.tickFormat = function (t, e) { return ri(n, t, e) }, t.copy = function () { return fi(n) }, t } function hi(n) { return n.innerRadius } function gi(n) { return n.outerRadius } function pi(n) { return n.startAngle } function di(n) { return n.endAngle } function vi(n) { for (var t, e, r, u = -1, i = n.length; ++u < i;)t = n[u], e = t[0], r = t[1] + jc, t[0] = e * Math.cos(r), t[1] = e * Math.sin(r); return n } function mi(n) { function t(t) { function c() { d.push("M", a(n(m), f), s, l(n(v.reverse()), f), "Z") } for (var h, g, p, d = [], v = [], m = [], y = -1, M = t.length, x = gt(e), b = gt(u), _ = e === r ? function () { return g } : gt(r), w = u === i ? function () { return p } : gt(i); ++y < M;)o.call(this, h = t[y], y) ? (v.push([g = +x.call(this, h, y), p = +b.call(this, h, y)]), m.push([+_.call(this, h, y), +w.call(this, h, y)])) : v.length && (c(), v = [], m = []); return v.length && c(), d.length ? d.join("") : null } var e = Ue, r = Ue, u = 0, i = Ve, o = Vt, a = Ze, c = a.key, l = a, s = "L", f = .7; return t.x = function (n) { return arguments.length ? (e = r = n, t) : r }, t.x0 = function (n) { return arguments.length ? (e = n, t) : e }, t.x1 = function (n) { return arguments.length ? (r = n, t) : r }, t.y = function (n) { return arguments.length ? (u = i = n, t) : i }, t.y0 = function (n) { return arguments.length ? (u = n, t) : u }, t.y1 = function (n) { return arguments.length ? (i = n, t) : i }, t.defined = function (n) { return arguments.length ? (o = n, t) : o }, t.interpolate = function (n) { return arguments.length ? (c = "function" == typeof n ? a = n : (a = fc.get(n) || Ze).key, l = a.reverse || a, s = a.closed ? "M" : "L", t) : c }, t.tension = function (n) { return arguments.length ? (f = n, t) : f }, t } function yi(n) { return n.radius } function Mi(n) { return [n.x, n.y] } function xi(n) { return function () { var t = n.apply(this, arguments), e = t[0], r = t[1] + jc; return [e * Math.cos(r), e * Math.sin(r)] } } function bi() { return 64 } function _i() { return "circle" } function wi(n) { var t = Math.sqrt(n / Bo); return "M0," + t + "A" + t + "," + t + " 0 1,1 0," + -t + "A" + t + "," + t + " 0 1,1 0," + t + "Z" } function Si(n, t) { return jo(n, Yc), n.id = t, n } function Ei() { var n = this.__transition__; n && ++n.active } function ki(n, t, e, r) { var u = n.id; return N(n, "function" == typeof e ? function (n, i, o) { n.__transition__[u].tween.set(t, r(e.call(n, n.__data__, i, o))) } : (e = r(e), function (n) { n.__transition__[u].tween.set(t, e) })) } function Ai(n) { return null == n && (n = ""), function () { this.textContent = n } } function Ni(n, t, e, r) { var i = n.__transition__ || (n.__transition__ = { active: 0, count: 0 }), o = i[e]; if (!o) { var a = r.time; o = i[e] = { tween: new u, time: a, ease: r.ease, delay: r.delay, duration: r.duration }, ++i.count, vo.timer(function (r) { function u(r) { return i.active > e ? l() : (i.active = e, o.event && o.event.start.call(n, s, t), o.tween.forEach(function (e, r) { (r = r.call(n, s, t)) && p.push(r) }), c(r) ? 1 : (Mt(c, 0, a), void 0)) } function c(r) { if (i.active !== e) return l(); for (var u = (r - h) / g, a = f(u), c = p.length; c > 0;)p[--c].call(n, a); return u >= 1 ? (o.event && o.event.end.call(n, s, t), l()) : void 0 } function l() { return --i.count ? delete i[e] : delete n.__transition__, 1 } var s = n.__data__, f = o.ease, h = o.delay, g = o.duration, p = []; return r >= h ? u(r) : (Mt(u, h, a), void 0) }, 0, a) } } function qi(n, t) { n.attr("transform", function (n) { return "translate(" + t(n) + ",0)" }) } function Ti(n, t) { n.attr("transform", function (n) { return "translate(0," + t(n) + ")" }) } function zi() { this._ = new Date(arguments.length > 1 ? Date.UTC.apply(this, arguments) : arguments[0]) } function Ci(n, t, e) { function r(t) { var e = n(t), r = i(e, 1); return r - t > t - e ? e : r } function u(e) { return t(e = n(new $c(e - 1)), 1), e } function i(n, e) { return t(n = new $c(+n), e), n } function o(n, r, i) { var o = u(n), a = []; if (i > 1) for (; r > o;)e(o) % i || a.push(new Date(+o)), t(o, 1); else for (; r > o;)a.push(new Date(+o)), t(o, 1); return a } function a(n, t, e) { try { $c = zi; var r = new zi; return r._ = n, o(r, t, e) } finally { $c = Date } } n.floor = n, n.round = r, n.ceil = u, n.offset = i, n.range = o; var c = n.utc = Di(n); return c.floor = c, c.round = Di(r), c.ceil = Di(u), c.offset = Di(i), c.range = a, n } function Di(n) { return function (t, e) { try { $c = zi; var r = new zi; return r._ = t, n(r, e)._ } finally { $c = Date } } } function ji(n) { function t(t) { for (var r, u, i, o = [], a = -1, c = 0; ++a < e;)37 === n.charCodeAt(a) && (o.push(n.substring(c, a)), null != (u = gl[r = n.charAt(++a)]) && (r = n.charAt(++a)), (i = pl[r]) && (r = i(t, null == u ? "e" === r ? " " : "0" : u)), o.push(r), c = a + 1); return o.push(n.substring(c, a)), o.join("") } var e = n.length; return t.parse = function (t) { var e = { y: 1900, m: 0, d: 1, H: 0, M: 0, S: 0, L: 0 }, r = Li(e, n, t, 0); if (r != t.length) return null; "p" in e && (e.H = e.H % 12 + 12 * e.p); var u = new $c; return "j" in e ? u.setFullYear(e.y, 0, e.j) : "w" in e && ("W" in e || "U" in e) ? (u.setFullYear(e.y, 0, 1), u.setFullYear(e.y, 0, "W" in e ? (e.w + 6) % 7 + 7 * e.W - (u.getDay() + 5) % 7 : e.w + 7 * e.U - (u.getDay() + 6) % 7)) : u.setFullYear(e.y, e.m, e.d), u.setHours(e.H, e.M, e.S, e.L), u }, t.toString = function () { return n }, t } function Li(n, t, e, r) { for (var u, i, o, a = 0, c = t.length, l = e.length; c > a;) { if (r >= l) return -1; if (u = t.charCodeAt(a++), 37 === u) { if (o = t.charAt(a++), i = dl[o in gl ? t.charAt(a++) : o], !i || (r = i(n, e, r)) < 0) return -1 } else if (u != e.charCodeAt(r++)) return -1 } return r } function Hi(n) { return new RegExp("^(?:" + n.map(vo.requote).join("|") + ")", "i") } function Fi(n) { for (var t = new u, e = -1, r = n.length; ++e < r;)t.set(n[e].toLowerCase(), e); return t } function Pi(n, t, e) { var r = 0 > n ? "-" : "", u = (r ? -n : n) + "", i = u.length; return r + (e > i ? new Array(e - i + 1).join(t) + u : u) } function Oi(n, t, e) { ol.lastIndex = 0; var r = ol.exec(t.substring(e)); return r ? (n.w = al.get(r[0].toLowerCase()), e + r[0].length) : -1 } function Ri(n, t, e) { ul.lastIndex = 0; var r = ul.exec(t.substring(e)); return r ? (n.w = il.get(r[0].toLowerCase()), e + r[0].length) : -1 } function Yi(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 1)); return r ? (n.w = +r[0], e + r[0].length) : -1 } function Ii(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e)); return r ? (n.U = +r[0], e + r[0].length) : -1 } function Ui(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e)); return r ? (n.W = +r[0], e + r[0].length) : -1 } function Vi(n, t, e) { sl.lastIndex = 0; var r = sl.exec(t.substring(e)); return r ? (n.m = fl.get(r[0].toLowerCase()), e + r[0].length) : -1 } function Zi(n, t, e) { cl.lastIndex = 0; var r = cl.exec(t.substring(e)); return r ? (n.m = ll.get(r[0].toLowerCase()), e + r[0].length) : -1 } function Xi(n, t, e) { return Li(n, pl.c.toString(), t, e) } function Bi(n, t, e) { return Li(n, pl.x.toString(), t, e) } function $i(n, t, e) { return Li(n, pl.X.toString(), t, e) } function Wi(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 4)); return r ? (n.y = +r[0], e + r[0].length) : -1 } function Ji(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 2)); return r ? (n.y = Gi(+r[0]), e + r[0].length) : -1 } function Gi(n) { return n + (n > 68 ? 1900 : 2e3) } function Ki(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 2)); return r ? (n.m = r[0] - 1, e + r[0].length) : -1 } function Qi(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 2)); return r ? (n.d = +r[0], e + r[0].length) : -1 } function no(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 3)); return r ? (n.j = +r[0], e + r[0].length) : -1 } function to(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 2)); return r ? (n.H = +r[0], e + r[0].length) : -1 } function eo(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 2)); return r ? (n.M = +r[0], e + r[0].length) : -1 } function ro(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 2)); return r ? (n.S = +r[0], e + r[0].length) : -1 } function uo(n, t, e) { vl.lastIndex = 0; var r = vl.exec(t.substring(e, e + 3)); return r ? (n.L = +r[0], e + r[0].length) : -1 } function io(n, t, e) { var r = ml.get(t.substring(e, e += 2).toLowerCase()); return null == r ? -1 : (n.p = r, e) } function oo(n) { var t = n.getTimezoneOffset(), e = t > 0 ? "-" : "+", r = ~~(Math.abs(t) / 60), u = Math.abs(t) % 60; return e + Pi(r, "0", 2) + Pi(u, "0", 2) } function ao(n, t, e) { hl.lastIndex = 0; var r = hl.exec(t.substring(e, e + 1)); return r ? e + r[0].length : -1 } function co(n) { function t(n) { try { $c = zi; var t = new $c; return t._ = n, e(t) } finally { $c = Date } } var e = ji(n); return t.parse = function (n) { try { $c = zi; var t = e.parse(n); return t && t._ } finally { $c = Date } }, t.toString = e.toString, t } function lo(n) { return n.toISOString() } function so(n, t, e) { function r(t) { return n(t) } function u(n, e) { var r = n[1] - n[0], u = r / e, i = vo.bisect(Ml, u); return i == Ml.length ? [t.year, ti(n.map(function (n) { return n / 31536e6 }), e)[2]] : i ? t[u / Ml[i - 1] < Ml[i] / u ? i - 1 : i] : [wl, ti(n, e)[2]] } return r.invert = function (t) { return fo(n.invert(t)) }, r.domain = function (t) { return arguments.length ? (n.domain(t), r) : n.domain().map(fo) }, r.nice = function (n, t) { function e(e) { return !isNaN(e) && !n.range(e, fo(+e + 1), t).length } var i = r.domain(), o = Xu(i), a = null == n ? u(o, 10) : "number" == typeof n && u(o, n); return a && (n = a[0], t = a[1]), r.domain(Wu(i, t > 1 ? { floor: function (t) { for (; e(t = n.floor(t));)t = fo(t - 1); return t }, ceil: function (t) { for (; e(t = n.ceil(t));)t = fo(+t + 1); return t } } : n)) }, r.ticks = function (n, t) { var e = Xu(r.domain()), i = null == n ? u(e, 10) : "number" == typeof n ? u(e, n) : !n.range && [{ range: n }, t]; return i && (n = i[0], t = i[1]), n.range(e[0], fo(+e[1] + 1), t) }, r.tickFormat = function () { return e }, r.copy = function () { return so(n.copy(), t, e) }, Qu(r, n) } function fo(n) { return new Date(n) } function ho(n) { return function (t) { for (var e = n.length - 1, r = n[e]; !r[1](t);)r = n[--e]; return r[0](t) } } function go(n) { return JSON.parse(n.responseText) } function po(n) { var t = Mo.createRange(); return t.selectNode(Mo.body), t.createContextualFragment(n.responseText) } var vo = { version: "3.3.1" }; Date.now || (Date.now = function () { return +new Date }); var mo = [].slice, yo = function (n) { return mo.call(n) }, Mo = document, xo = Mo.documentElement, bo = window; try { yo(xo.childNodes)[0].nodeType } catch (_o) { yo = function (n) { for (var t = n.length, e = new Array(t); t--;)e[t] = n[t]; return e } } try { Mo.createElement("div").style.setProperty("opacity", 0, "") } catch (wo) { var So = bo.Element.prototype, Eo = So.setAttribute, ko = So.setAttributeNS, Ao = bo.CSSStyleDeclaration.prototype, No = Ao.setProperty; So.setAttribute = function (n, t) { Eo.call(this, n, t + "") }, So.setAttributeNS = function (n, t, e) { ko.call(this, n, t, e + "") }, Ao.setProperty = function (n, t, e) { No.call(this, n, t + "", e) } } vo.ascending = function (n, t) { return t > n ? -1 : n > t ? 1 : n >= t ? 0 : 0 / 0 }, vo.descending = function (n, t) { return n > t ? -1 : t > n ? 1 : t >= n ? 0 : 0 / 0 }, vo.min = function (n, t) { var e, r, u = -1, i = n.length; if (1 === arguments.length) { for (; ++u < i && !(null != (e = n[u]) && e >= e);)e = void 0; for (; ++u < i;)null != (r = n[u]) && e > r && (e = r) } else { for (; ++u < i && !(null != (e = t.call(n, n[u], u)) && e >= e);)e = void 0; for (; ++u < i;)null != (r = t.call(n, n[u], u)) && e > r && (e = r) } return e }, vo.max = function (n, t) { var e, r, u = -1, i = n.length; if (1 === arguments.length) { for (; ++u < i && !(null != (e = n[u]) && e >= e);)e = void 0; for (; ++u < i;)null != (r = n[u]) && r > e && (e = r) } else { for (; ++u < i && !(null != (e = t.call(n, n[u], u)) && e >= e);)e = void 0; for (; ++u < i;)null != (r = t.call(n, n[u], u)) && r > e && (e = r) } return e }, vo.extent = function (n, t) { var e, r, u, i = -1, o = n.length; if (1 === arguments.length) { for (; ++i < o && !(null != (e = u = n[i]) && e >= e);)e = u = void 0; for (; ++i < o;)null != (r = n[i]) && (e > r && (e = r), r > u && (u = r)) } else { for (; ++i < o && !(null != (e = u = t.call(n, n[i], i)) && e >= e);)e = void 0; for (; ++i < o;)null != (r = t.call(n, n[i], i)) && (e > r && (e = r), r > u && (u = r)) } return [e, u] }, vo.sum = function (n, t) { var e, r = 0, u = n.length, i = -1; if (1 === arguments.length) for (; ++i < u;)isNaN(e = +n[i]) || (r += e); else for (; ++i < u;)isNaN(e = +t.call(n, n[i], i)) || (r += e); return r }, vo.mean = function (t, e) { var r, u = t.length, i = 0, o = -1, a = 0; if (1 === arguments.length) for (; ++o < u;)n(r = t[o]) && (i += (r - i) / ++a); else for (; ++o < u;)n(r = e.call(t, t[o], o)) && (i += (r - i) / ++a); return a ? i : void 0 }, vo.quantile = function (n, t) { var e = (n.length - 1) * t + 1, r = Math.floor(e), u = +n[r - 1], i = e - r; return i ? u + i * (n[r] - u) : u }, vo.median = function (t, e) { return arguments.length > 1 && (t = t.map(e)), t = t.filter(n), t.length ? vo.quantile(t.sort(vo.ascending), .5) : void 0 }, vo.bisector = function (n) { return { left: function (t, e, r, u) { for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length); u > r;) { var i = r + u >>> 1; n.call(t, t[i], i) < e ? r = i + 1 : u = i } return r }, right: function (t, e, r, u) { for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length); u > r;) { var i = r + u >>> 1; e < n.call(t, t[i], i) ? u = i : r = i + 1 } return r } } }; var qo = vo.bisector(function (n) { return n }); vo.bisectLeft = qo.left, vo.bisect = vo.bisectRight = qo.right, vo.shuffle = function (n) { for (var t, e, r = n.length; r;)e = 0 | Math.random() * r-- , t = n[r], n[r] = n[e], n[e] = t; return n }, vo.permute = function (n, t) { for (var e = t.length, r = new Array(e); e--;)r[e] = n[t[e]]; return r }, vo.pairs = function (n) { for (var t, e = 0, r = n.length - 1, u = n[0], i = new Array(0 > r ? 0 : r); r > e;)i[e] = [t = u, u = n[++e]]; return i }, vo.zip = function () { if (!(u = arguments.length)) return []; for (var n = -1, e = vo.min(arguments, t), r = new Array(e); ++n < e;)for (var u, i = -1, o = r[n] = new Array(u); ++i < u;)o[i] = arguments[i][n]; return r }, vo.transpose = function (n) { return vo.zip.apply(vo, n) }, vo.keys = function (n) { var t = []; for (var e in n) t.push(e); return t }, vo.values = function (n) { var t = []; for (var e in n) t.push(n[e]); return t }, vo.entries = function (n) { var t = []; for (var e in n) t.push({ key: e, value: n[e] }); return t }, vo.merge = function (n) { return Array.prototype.concat.apply([], n) }, vo.range = function (n, t, r) {
32
- if (arguments.length < 3 && (r = 1, arguments.length < 2 && (t = n, n = 0)), 1 / 0 === (t - n) / r) throw new Error("infinite range"); var u, i = [], o = e(Math.abs(r)), a = -1; if (n *= o, t *= o, r *= o, 0 > r) for (; (u = n + r * ++a) > t;)i.push(u / o);
33
- else for (; (u = n + r * ++a) < t;)i.push(u / o); return i
34
- }, vo.map = function (n) { var t = new u; if (n instanceof u) n.forEach(function (n, e) { t.set(n, e) }); else for (var e in n) t.set(e, n[e]); return t }, r(u, { has: function (n) { return To + n in this }, get: function (n) { return this[To + n] }, set: function (n, t) { return this[To + n] = t }, remove: function (n) { return n = To + n, n in this && delete this[n] }, keys: function () { var n = []; return this.forEach(function (t) { n.push(t) }), n }, values: function () { var n = []; return this.forEach(function (t, e) { n.push(e) }), n }, entries: function () { var n = []; return this.forEach(function (t, e) { n.push({ key: t, value: e }) }), n }, forEach: function (n) { for (var t in this) t.charCodeAt(0) === zo && n.call(this, t.substring(1), this[t]) } }); var To = "\0", zo = To.charCodeAt(0); vo.nest = function () { function n(t, a, c) { if (c >= o.length) return r ? r.call(i, a) : e ? a.sort(e) : a; for (var l, s, f, h, g = -1, p = a.length, d = o[c++], v = new u; ++g < p;)(h = v.get(l = d(s = a[g]))) ? h.push(s) : v.set(l, [s]); return t ? (s = t(), f = function (e, r) { s.set(e, n(t, r, c)) }) : (s = {}, f = function (e, r) { s[e] = n(t, r, c) }), v.forEach(f), s } function t(n, e) { if (e >= o.length) return n; var r = [], u = a[e++]; return n.forEach(function (n, u) { r.push({ key: n, values: t(u, e) }) }), u ? r.sort(function (n, t) { return u(n.key, t.key) }) : r } var e, r, i = {}, o = [], a = []; return i.map = function (t, e) { return n(e, t, 0) }, i.entries = function (e) { return t(n(vo.map, e, 0), 0) }, i.key = function (n) { return o.push(n), i }, i.sortKeys = function (n) { return a[o.length - 1] = n, i }, i.sortValues = function (n) { return e = n, i }, i.rollup = function (n) { return r = n, i }, i }, vo.set = function (n) { var t = new i; if (n) for (var e = 0, r = n.length; r > e; ++e)t.add(n[e]); return t }, r(i, { has: function (n) { return To + n in this }, add: function (n) { return this[To + n] = !0, n }, remove: function (n) { return n = To + n, n in this && delete this[n] }, values: function () { var n = []; return this.forEach(function (t) { n.push(t) }), n }, forEach: function (n) { for (var t in this) t.charCodeAt(0) === zo && n.call(this, t.substring(1)) } }), vo.behavior = {}, vo.rebind = function (n, t) { for (var e, r = 1, u = arguments.length; ++r < u;)n[e = arguments[r]] = o(n, t, t[e]); return n }; var Co = ["webkit", "ms", "moz", "Moz", "o", "O"]; vo.dispatch = function () { for (var n = new l, t = -1, e = arguments.length; ++t < e;)n[arguments[t]] = s(n); return n }, l.prototype.on = function (n, t) { var e = n.indexOf("."), r = ""; if (e >= 0 && (r = n.substring(e + 1), n = n.substring(0, e)), n) return arguments.length < 2 ? this[n].on(r) : this[n].on(r, t); if (2 === arguments.length) { if (null == t) for (n in this) this.hasOwnProperty(n) && this[n].on(r, null); return this } }, vo.event = null, vo.requote = function (n) { return n.replace(Do, "\\$&") }; var Do = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g, jo = {}.__proto__ ? function (n, t) { n.__proto__ = t } : function (n, t) { for (var e in t) n[e] = t[e] }, Lo = function (n, t) { return t.querySelector(n) }, Ho = function (n, t) { return t.querySelectorAll(n) }, Fo = xo[a(xo, "matchesSelector")], Po = function (n, t) { return Fo.call(n, t) }; "function" == typeof Sizzle && (Lo = function (n, t) { return Sizzle(n, t)[0] || null }, Ho = function (n, t) { return Sizzle.uniqueSort(Sizzle(n, t)) }, Po = Sizzle.matchesSelector), vo.selection = function () { return Io }; var Oo = vo.selection.prototype = []; Oo.select = function (n) { var t, e, r, u, i = []; n = d(n); for (var o = -1, a = this.length; ++o < a;) { i.push(t = []), t.parentNode = (r = this[o]).parentNode; for (var c = -1, l = r.length; ++c < l;)(u = r[c]) ? (t.push(e = n.call(u, u.__data__, c, o)), e && "__data__" in u && (e.__data__ = u.__data__)) : t.push(null) } return p(i) }, Oo.selectAll = function (n) { var t, e, r = []; n = v(n); for (var u = -1, i = this.length; ++u < i;)for (var o = this[u], a = -1, c = o.length; ++a < c;)(e = o[a]) && (r.push(t = yo(n.call(e, e.__data__, a, u))), t.parentNode = e); return p(r) }; var Ro = { svg: "http://www.w3.org/2000/svg", xhtml: "http://www.w3.org/1999/xhtml", xlink: "http://www.w3.org/1999/xlink", xml: "http://www.w3.org/XML/1998/namespace", xmlns: "http://www.w3.org/2000/xmlns/" }; vo.ns = { prefix: Ro, qualify: function (n) { var t = n.indexOf(":"), e = n; return t >= 0 && (e = n.substring(0, t), n = n.substring(t + 1)), Ro.hasOwnProperty(e) ? { space: Ro[e], local: n } : n } }, Oo.attr = function (n, t) { if (arguments.length < 2) { if ("string" == typeof n) { var e = this.node(); return n = vo.ns.qualify(n), n.local ? e.getAttributeNS(n.space, n.local) : e.getAttribute(n) } for (t in n) this.each(m(t, n[t])); return this } return this.each(m(n, t)) }, Oo.classed = function (n, t) { if (arguments.length < 2) { if ("string" == typeof n) { var e = this.node(), r = (n = n.trim().split(/^|\s+/g)).length, u = -1; if (t = e.classList) { for (; ++u < r;)if (!t.contains(n[u])) return !1 } else for (t = e.getAttribute("class"); ++u < r;)if (!M(n[u]).test(t)) return !1; return !0 } for (t in n) this.each(x(t, n[t])); return this } return this.each(x(n, t)) }, Oo.style = function (n, t, e) { var r = arguments.length; if (3 > r) { if ("string" != typeof n) { 2 > r && (t = ""); for (e in n) this.each(_(e, n[e], t)); return this } if (2 > r) return bo.getComputedStyle(this.node(), null).getPropertyValue(n); e = "" } return this.each(_(n, t, e)) }, Oo.property = function (n, t) { if (arguments.length < 2) { if ("string" == typeof n) return this.node()[n]; for (t in n) this.each(w(t, n[t])); return this } return this.each(w(n, t)) }, Oo.text = function (n) { return arguments.length ? this.each("function" == typeof n ? function () { var t = n.apply(this, arguments); this.textContent = null == t ? "" : t } : null == n ? function () { this.textContent = "" } : function () { this.textContent = n }) : this.node().textContent }, Oo.html = function (n) { return arguments.length ? this.each("function" == typeof n ? function () { var t = n.apply(this, arguments); this.innerHTML = null == t ? "" : t } : null == n ? function () { this.innerHTML = "" } : function () { this.innerHTML = n }) : this.node().innerHTML }, Oo.append = function (n) { return n = S(n), this.select(function () { return this.appendChild(n.apply(this, arguments)) }) }, Oo.insert = function (n, t) { return n = S(n), t = d(t), this.select(function () { return this.insertBefore(n.apply(this, arguments), t.apply(this, arguments)) }) }, Oo.remove = function () { return this.each(function () { var n = this.parentNode; n && n.removeChild(this) }) }, Oo.data = function (n, t) { function e(n, e) { var r, i, o, a = n.length, f = e.length, h = Math.min(a, f), g = new Array(f), p = new Array(f), d = new Array(a); if (t) { var v, m = new u, y = new u, M = []; for (r = -1; ++r < a;)v = t.call(i = n[r], i.__data__, r), m.has(v) ? d[r] = i : m.set(v, i), M.push(v); for (r = -1; ++r < f;)v = t.call(e, o = e[r], r), (i = m.get(v)) ? (g[r] = i, i.__data__ = o) : y.has(v) || (p[r] = E(o)), y.set(v, o), m.remove(v); for (r = -1; ++r < a;)m.has(M[r]) && (d[r] = n[r]) } else { for (r = -1; ++r < h;)i = n[r], o = e[r], i ? (i.__data__ = o, g[r] = i) : p[r] = E(o); for (; f > r; ++r)p[r] = E(e[r]); for (; a > r; ++r)d[r] = n[r] } p.update = g, p.parentNode = g.parentNode = d.parentNode = n.parentNode, c.push(p), l.push(g), s.push(d) } var r, i, o = -1, a = this.length; if (!arguments.length) { for (n = new Array(a = (r = this[0]).length); ++o < a;)(i = r[o]) && (n[o] = i.__data__); return n } var c = q([]), l = p([]), s = p([]); if ("function" == typeof n) for (; ++o < a;)e(r = this[o], n.call(r, r.parentNode.__data__, o)); else for (; ++o < a;)e(r = this[o], n); return l.enter = function () { return c }, l.exit = function () { return s }, l }, Oo.datum = function (n) { return arguments.length ? this.property("__data__", n) : this.property("__data__") }, Oo.filter = function (n) { var t, e, r, u = []; "function" != typeof n && (n = k(n)); for (var i = 0, o = this.length; o > i; i++) { u.push(t = []), t.parentNode = (e = this[i]).parentNode; for (var a = 0, c = e.length; c > a; a++)(r = e[a]) && n.call(r, r.__data__, a) && t.push(r) } return p(u) }, Oo.order = function () { for (var n = -1, t = this.length; ++n < t;)for (var e, r = this[n], u = r.length - 1, i = r[u]; --u >= 0;)(e = r[u]) && (i && i !== e.nextSibling && i.parentNode.insertBefore(e, i), i = e); return this }, Oo.sort = function (n) { n = A.apply(this, arguments); for (var t = -1, e = this.length; ++t < e;)this[t].sort(n); return this.order() }, Oo.each = function (n) { return N(this, function (t, e, r) { n.call(t, t.__data__, e, r) }) }, Oo.call = function (n) { var t = yo(arguments); return n.apply(t[0] = this, t), this }, Oo.empty = function () { return !this.node() }, Oo.node = function () { for (var n = 0, t = this.length; t > n; n++)for (var e = this[n], r = 0, u = e.length; u > r; r++) { var i = e[r]; if (i) return i } return null }, Oo.size = function () { var n = 0; return this.each(function () { ++n }), n }; var Yo = []; vo.selection.enter = q, vo.selection.enter.prototype = Yo, Yo.append = Oo.append, Yo.empty = Oo.empty, Yo.node = Oo.node, Yo.call = Oo.call, Yo.size = Oo.size, Yo.select = function (n) { for (var t, e, r, u, i, o = [], a = -1, c = this.length; ++a < c;) { r = (u = this[a]).update, o.push(t = []), t.parentNode = u.parentNode; for (var l = -1, s = u.length; ++l < s;)(i = u[l]) ? (t.push(r[l] = e = n.call(u.parentNode, i.__data__, l, a)), e.__data__ = i.__data__) : t.push(null) } return p(o) }, Yo.insert = function (n, t) { return arguments.length < 2 && (t = T(this)), Oo.insert.call(this, n, t) }, vo.select = function (n) { var t = ["string" == typeof n ? Lo(n, Mo) : n]; return t.parentNode = xo, p([t]) }, vo.selectAll = function (n) { var t = yo("string" == typeof n ? Ho(n, Mo) : n); return t.parentNode = xo, p([t]) }; var Io = vo.select(xo); Oo.on = function (n, t, e) { var r = arguments.length; if (3 > r) { if ("string" != typeof n) { 2 > r && (t = !1); for (e in n) this.each(z(e, n[e], t)); return this } if (2 > r) return (r = this.node()["__on" + n]) && r._; e = !1 } return this.each(z(n, t, e)) }; var Uo = vo.map({ mouseenter: "mouseover", mouseleave: "mouseout" }); Uo.forEach(function (n) { "on" + n in Mo && Uo.remove(n) }); var Vo = a(xo.style, "userSelect"), Zo = 0; vo.mouse = function (n) { return L(n, h()) }; var Xo = /WebKit/.test(bo.navigator.userAgent) ? -1 : 0; vo.touches = function (n, t) { return arguments.length < 2 && (t = h().touches), t ? yo(t).map(function (t) { var e = L(n, t); return e.identifier = t.identifier, e }) : [] }, vo.behavior.drag = function () { function n() { this.on("mousedown.drag", o).on("touchstart.drag", a) } function t() { return vo.event.changedTouches[0].identifier } function e(n, t) { return vo.touches(n).filter(function (n) { return n.identifier === t })[0] } function r(n, t, e, r) { return function () { function o() { if (!s) return a(); var n = t(s, g), e = n[0] - d[0], r = n[1] - d[1]; v |= e | r, d = n, f({ type: "drag", x: n[0] + c[0], y: n[1] + c[1], dx: e, dy: r }) } function a() { m.on(e + "." + p, null).on(r + "." + p, null), y(v && vo.event.target === h), f({ type: "dragend" }) } var c, l = this, s = l.parentNode, f = u.of(l, arguments), h = vo.event.target, g = n(), p = null == g ? "drag" : "drag-" + g, d = t(s, g), v = 0, m = vo.select(bo).on(e + "." + p, o).on(r + "." + p, a), y = j(); i ? (c = i.apply(l, arguments), c = [c.x - d[0], c.y - d[1]]) : c = [0, 0], f({ type: "dragstart" }) } } var u = g(n, "drag", "dragstart", "dragend"), i = null, o = r(c, vo.mouse, "mousemove", "mouseup"), a = r(t, e, "touchmove", "touchend"); return n.origin = function (t) { return arguments.length ? (i = t, n) : i }, vo.rebind(n, u, "on") }; var Bo = Math.PI, $o = 1e-6, Wo = $o * $o, Jo = Bo / 180, Go = 180 / Bo, Ko = Math.SQRT2, Qo = 2, na = 4; vo.interpolateZoom = function (n, t) { function e(n) { var t = n * y; if (m) { var e = R(d), o = i / (Qo * h) * (e * Y(Ko * t + d) - O(d)); return [r + o * l, u + o * s, i * e / R(Ko * t + d)] } return [r + n * l, u + n * s, i * Math.exp(Ko * t)] } var r = n[0], u = n[1], i = n[2], o = t[0], a = t[1], c = t[2], l = o - r, s = a - u, f = l * l + s * s, h = Math.sqrt(f), g = (c * c - i * i + na * f) / (2 * i * Qo * h), p = (c * c - i * i - na * f) / (2 * c * Qo * h), d = Math.log(Math.sqrt(g * g + 1) - g), v = Math.log(Math.sqrt(p * p + 1) - p), m = v - d, y = (m || Math.log(c / i)) / Ko; return e.duration = 1e3 * y, e }, vo.behavior.zoom = function () { function n(n) { n.on(A, l).on(ra + ".zoom", h).on(N, p).on("dblclick.zoom", d).on(T, s) } function t(n) { return [(n[0] - S.x) / S.k, (n[1] - S.y) / S.k] } function e(n) { return [n[0] * S.k + S.x, n[1] * S.k + S.y] } function r(n) { S.k = Math.max(k[0], Math.min(k[1], n)) } function u(n, t) { t = e(t), S.x += n[0] - t[0], S.y += n[1] - t[1] } function i() { b && b.domain(x.range().map(function (n) { return (n - S.x) / S.k }).map(x.invert)), w && w.domain(_.range().map(function (n) { return (n - S.y) / S.k }).map(_.invert)) } function o(n) { n({ type: "zoomstart" }) } function a(n) { i(), n({ type: "zoom", scale: S.k, translate: [S.x, S.y] }) } function c(n) { n({ type: "zoomend" }) } function l() { function n() { s = 1, u(vo.mouse(r), h), a(i) } function e() { f.on(N, bo === r ? p : null).on(q, null), g(s && vo.event.target === l), c(i) } var r = this, i = D.of(r, arguments), l = vo.event.target, s = 0, f = vo.select(bo).on(N, n).on(q, e), h = t(vo.mouse(r)), g = j(); Ei.call(r), o(i) } function s() { function n() { var n = vo.touches(d); return p = S.k, g = {}, n.forEach(function (n) { g[n.identifier] = t(n) }), n } function e() { var t = Date.now(), e = n(); if (1 === e.length) { if (500 > t - M) { var i = e[0], o = g[i.identifier]; r(2 * S.k), u(i, o), f(), a(v) } M = t } else if (e.length > 1) { var i = e[0], c = e[1], l = i[0] - c[0], s = i[1] - c[1]; m = l * l + s * s } } function i() { var n = vo.touches(d), t = n[0], e = g[t.identifier]; if (i = n[1]) { var i, o = g[i.identifier], c = vo.event.scale; if (null == c) { var l = (l = i[0] - t[0]) * l + (l = i[1] - t[1]) * l; c = m && Math.sqrt(l / m) } t = [(t[0] + i[0]) / 2, (t[1] + i[1]) / 2], e = [(e[0] + o[0]) / 2, (e[1] + o[1]) / 2], r(c * p) } M = null, u(t, e), a(v) } function h() { vo.event.touches.length ? n() : (y.on(z, null).on(C, null), x.on(A, l).on(T, s), b(), c(v)) } var g, p, d = this, v = D.of(d, arguments), m = 0, y = vo.select(bo).on(z, i).on(C, h), x = vo.select(d).on(A, null).on(T, e), b = j(); Ei.call(d), e(), o(v) } function h() { var n = D.of(this, arguments); y ? clearTimeout(y) : (Ei.call(this), o(n)), y = setTimeout(function () { y = null, c(n) }, 50), f(); var e = m || vo.mouse(this); v || (v = t(e)), r(Math.pow(2, .002 * ta()) * S.k), u(e, v), a(n) } function p() { v = null } function d() { var n = D.of(this, arguments), e = vo.mouse(this), i = t(e), l = Math.log(S.k) / Math.LN2; o(n), r(Math.pow(2, vo.event.shiftKey ? Math.ceil(l) - 1 : Math.floor(l) + 1)), u(e, i), a(n), c(n) } var v, m, y, M, x, b, _, w, S = { x: 0, y: 0, k: 1 }, E = [960, 500], k = ea, A = "mousedown.zoom", N = "mousemove.zoom", q = "mouseup.zoom", T = "touchstart.zoom", z = "touchmove.zoom", C = "touchend.zoom", D = g(n, "zoomstart", "zoom", "zoomend"); return n.event = function (n) { n.each(function () { var n = D.of(this, arguments), t = S; Fc ? vo.select(this).transition().each("start.zoom", function () { S = this.__chart__ || { x: 0, y: 0, k: 1 }, o(n) }).tween("zoom:zoom", function () { var e = E[0], r = E[1], u = e / 2, i = r / 2, o = vo.interpolateZoom([(u - S.x) / S.k, (i - S.y) / S.k, e / S.k], [(u - t.x) / t.k, (i - t.y) / t.k, e / t.k]); return function (t) { var r = o(t), c = e / r[2]; this.__chart__ = S = { x: u - r[0] * c, y: i - r[1] * c, k: c }, a(n) } }).each("end.zoom", function () { c(n) }) : (this.__chart__ = S, o(n), a(n), c(n)) }) }, n.translate = function (t) { return arguments.length ? (S = { x: +t[0], y: +t[1], k: S.k }, i(), n) : [S.x, S.y] }, n.scale = function (t) { return arguments.length ? (S = { x: S.x, y: S.y, k: +t }, i(), n) : S.k }, n.scaleExtent = function (t) { return arguments.length ? (k = null == t ? ea : [+t[0], +t[1]], n) : k }, n.center = function (t) { return arguments.length ? (m = t && [+t[0], +t[1]], n) : m }, n.size = function (t) { return arguments.length ? (E = t && [+t[0], +t[1]], n) : E }, n.x = function (t) { return arguments.length ? (b = t, x = t.copy(), S = { x: 0, y: 0, k: 1 }, n) : b }, n.y = function (t) { return arguments.length ? (w = t, _ = t.copy(), S = { x: 0, y: 0, k: 1 }, n) : w }, vo.rebind(n, D, "on") }; var ta, ea = [0, 1 / 0], ra = "onwheel" in Mo ? (ta = function () { return -vo.event.deltaY * (vo.event.deltaMode ? 120 : 1) }, "wheel") : "onmousewheel" in Mo ? (ta = function () { return vo.event.wheelDelta }, "mousewheel") : (ta = function () { return -vo.event.detail }, "MozMousePixelScroll"); U.prototype.toString = function () { return this.rgb() + "" }, vo.hsl = function (n, t, e) { return 1 === arguments.length ? n instanceof Z ? V(n.h, n.s, n.l) : ct("" + n, lt, V) : V(+n, +t, +e) }; var ua = Z.prototype = new U; ua.brighter = function (n) { return n = Math.pow(.7, arguments.length ? n : 1), V(this.h, this.s, this.l / n) }, ua.darker = function (n) { return n = Math.pow(.7, arguments.length ? n : 1), V(this.h, this.s, n * this.l) }, ua.rgb = function () { return X(this.h, this.s, this.l) }, vo.hcl = function (n, t, e) { return 1 === arguments.length ? n instanceof $ ? B(n.h, n.c, n.l) : n instanceof G ? Q(n.l, n.a, n.b) : Q((n = st((n = vo.rgb(n)).r, n.g, n.b)).l, n.a, n.b) : B(+n, +t, +e) }; var ia = $.prototype = new U; ia.brighter = function (n) { return B(this.h, this.c, Math.min(100, this.l + oa * (arguments.length ? n : 1))) }, ia.darker = function (n) { return B(this.h, this.c, Math.max(0, this.l - oa * (arguments.length ? n : 1))) }, ia.rgb = function () { return W(this.h, this.c, this.l).rgb() }, vo.lab = function (n, t, e) { return 1 === arguments.length ? n instanceof G ? J(n.l, n.a, n.b) : n instanceof $ ? W(n.l, n.c, n.h) : st((n = vo.rgb(n)).r, n.g, n.b) : J(+n, +t, +e) }; var oa = 18, aa = .95047, ca = 1, la = 1.08883, sa = G.prototype = new U; sa.brighter = function (n) { return J(Math.min(100, this.l + oa * (arguments.length ? n : 1)), this.a, this.b) }, sa.darker = function (n) { return J(Math.max(0, this.l - oa * (arguments.length ? n : 1)), this.a, this.b) }, sa.rgb = function () { return K(this.l, this.a, this.b) }, vo.rgb = function (n, t, e) { return 1 === arguments.length ? n instanceof ot ? it(n.r, n.g, n.b) : ct("" + n, it, X) : it(~~n, ~~t, ~~e) }; var fa = ot.prototype = new U; fa.brighter = function (n) { n = Math.pow(.7, arguments.length ? n : 1); var t = this.r, e = this.g, r = this.b, u = 30; return t || e || r ? (t && u > t && (t = u), e && u > e && (e = u), r && u > r && (r = u), it(Math.min(255, ~~(t / n)), Math.min(255, ~~(e / n)), Math.min(255, ~~(r / n)))) : it(u, u, u) }, fa.darker = function (n) { return n = Math.pow(.7, arguments.length ? n : 1), it(~~(n * this.r), ~~(n * this.g), ~~(n * this.b)) }, fa.hsl = function () { return lt(this.r, this.g, this.b) }, fa.toString = function () { return "#" + at(this.r) + at(this.g) + at(this.b) }; var ha = vo.map({ aliceblue: 15792383, antiquewhite: 16444375, aqua: 65535, aquamarine: 8388564, azure: 15794175, beige: 16119260, bisque: 16770244, black: 0, blanchedalmond: 16772045, blue: 255, blueviolet: 9055202, brown: 10824234, burlywood: 14596231, cadetblue: 6266528, chartreuse: 8388352, chocolate: 13789470, coral: 16744272, cornflowerblue: 6591981, cornsilk: 16775388, crimson: 14423100, cyan: 65535, darkblue: 139, darkcyan: 35723, darkgoldenrod: 12092939, darkgray: 11119017, darkgreen: 25600, darkgrey: 11119017, darkkhaki: 12433259, darkmagenta: 9109643, darkolivegreen: 5597999, darkorange: 16747520, darkorchid: 10040012, darkred: 9109504, darksalmon: 15308410, darkseagreen: 9419919, darkslateblue: 4734347, darkslategray: 3100495, darkslategrey: 3100495, darkturquoise: 52945, darkviolet: 9699539, deeppink: 16716947, deepskyblue: 49151, dimgray: 6908265, dimgrey: 6908265, dodgerblue: 2003199, firebrick: 11674146, floralwhite: 16775920, forestgreen: 2263842, fuchsia: 16711935, gainsboro: 14474460, ghostwhite: 16316671, gold: 16766720, goldenrod: 14329120, gray: 8421504, green: 32768, greenyellow: 11403055, grey: 8421504, honeydew: 15794160, hotpink: 16738740, indianred: 13458524, indigo: 4915330, ivory: 16777200, khaki: 15787660, lavender: 15132410, lavenderblush: 16773365, lawngreen: 8190976, lemonchiffon: 16775885, lightblue: 11393254, lightcoral: 15761536, lightcyan: 14745599, lightgoldenrodyellow: 16448210, lightgray: 13882323, lightgreen: 9498256, lightgrey: 13882323, lightpink: 16758465, lightsalmon: 16752762, lightseagreen: 2142890, lightskyblue: 8900346, lightslategray: 7833753, lightslategrey: 7833753, lightsteelblue: 11584734, lightyellow: 16777184, lime: 65280, limegreen: 3329330, linen: 16445670, magenta: 16711935, maroon: 8388608, mediumaquamarine: 6737322, mediumblue: 205, mediumorchid: 12211667, mediumpurple: 9662683, mediumseagreen: 3978097, mediumslateblue: 8087790, mediumspringgreen: 64154, mediumturquoise: 4772300, mediumvioletred: 13047173, midnightblue: 1644912, mintcream: 16121850, mistyrose: 16770273, moccasin: 16770229, navajowhite: 16768685, navy: 128, oldlace: 16643558, olive: 8421376, olivedrab: 7048739, orange: 16753920, orangered: 16729344, orchid: 14315734, palegoldenrod: 15657130, palegreen: 10025880, paleturquoise: 11529966, palevioletred: 14381203, papayawhip: 16773077, peachpuff: 16767673, peru: 13468991, pink: 16761035, plum: 14524637, powderblue: 11591910, purple: 8388736, red: 16711680, rosybrown: 12357519, royalblue: 4286945, saddlebrown: 9127187, salmon: 16416882, sandybrown: 16032864, seagreen: 3050327, seashell: 16774638, sienna: 10506797, silver: 12632256, skyblue: 8900331, slateblue: 6970061, slategray: 7372944, slategrey: 7372944, snow: 16775930, springgreen: 65407, steelblue: 4620980, tan: 13808780, teal: 32896, thistle: 14204888, tomato: 16737095, turquoise: 4251856, violet: 15631086, wheat: 16113331, white: 16777215, whitesmoke: 16119285, yellow: 16776960, yellowgreen: 10145074 }); ha.forEach(function (n, t) { ha.set(n, rt(t)) }), vo.functor = gt, vo.xhr = dt(pt), vo.dsv = function (n, t) { function e(n, e, i) { arguments.length < 3 && (i = e, e = null); var o = vo.xhr(n, t, i); return o.row = function (n) { return arguments.length ? o.response(null == (e = n) ? r : u(n)) : e }, o.row(e) } function r(n) { return e.parse(n.responseText) } function u(n) { return function (t) { return e.parse(t.responseText, n) } } function o(t) { return t.map(a).join(n) } function a(n) { return c.test(n) ? '"' + n.replace(/\"/g, '""') + '"' : n } var c = new RegExp('["' + n + "\n]"), l = n.charCodeAt(0); return e.parse = function (n, t) { var r; return e.parseRows(n, function (n, e) { if (r) return r(n, e - 1); var u = new Function("d", "return {" + n.map(function (n, t) { return JSON.stringify(n) + ": d[" + t + "]" }).join(",") + "}"); r = t ? function (n, e) { return t(u(n), e) } : u }) }, e.parseRows = function (n, t) { function e() { if (s >= c) return o; if (u) return u = !1, i; var t = s; if (34 === n.charCodeAt(t)) { for (var e = t; e++ < c;)if (34 === n.charCodeAt(e)) { if (34 !== n.charCodeAt(e + 1)) break; ++e } s = e + 2; var r = n.charCodeAt(e + 1); return 13 === r ? (u = !0, 10 === n.charCodeAt(e + 2) && ++s) : 10 === r && (u = !0), n.substring(t + 1, e).replace(/""/g, '"') } for (; c > s;) { var r = n.charCodeAt(s++), a = 1; if (10 === r) u = !0; else if (13 === r) u = !0, 10 === n.charCodeAt(s) && (++s, ++a); else if (r !== l) continue; return n.substring(t, s - a) } return n.substring(t) } for (var r, u, i = {}, o = {}, a = [], c = n.length, s = 0, f = 0; (r = e()) !== o;) { for (var h = []; r !== i && r !== o;)h.push(r), r = e(); (!t || (h = t(h, f++))) && a.push(h) } return a }, e.format = function (t) { if (Array.isArray(t[0])) return e.formatRows(t); var r = new i, u = []; return t.forEach(function (n) { for (var t in n) r.has(t) || u.push(r.add(t)) }), [u.map(a).join(n)].concat(t.map(function (t) { return u.map(function (n) { return a(t[n]) }).join(n) })).join("\n") }, e.formatRows = function (n) { return n.map(o).join("\n") }, e }, vo.csv = vo.dsv(",", "text/csv"), vo.tsv = vo.dsv(" ", "text/tab-separated-values"); var ga, pa, da, va, ma, ya = bo[a(bo, "requestAnimationFrame")] || function (n) { setTimeout(n, 17) }; vo.timer = function (n, t, e) { var r = arguments.length; 2 > r && (t = 0), 3 > r && (e = Date.now()); var u = e + t, i = { callback: n, time: u, next: null }; pa ? pa.next = i : ga = i, pa = i, da || (va = clearTimeout(va), da = 1, ya(yt)) }, vo.timer.flush = function () { xt(), bt() }; var Ma = ".", xa = ",", ba = [3, 3], _a = "$", wa = ["y", "z", "a", "f", "p", "n", "\xb5", "m", "", "k", "M", "G", "T", "P", "E", "Z", "Y"].map(_t); vo.formatPrefix = function (n, t) { var e = 0; return n && (0 > n && (n *= -1), t && (n = vo.round(n, wt(n, t))), e = 1 + Math.floor(1e-12 + Math.log(n) / Math.LN10), e = Math.max(-24, Math.min(24, 3 * Math.floor((0 >= e ? e + 1 : e - 1) / 3)))), wa[8 + e / 3] }, vo.round = function (n, t) { return t ? Math.round(n * (t = Math.pow(10, t))) / t : Math.round(n) }, vo.format = function (n) { var t = Sa.exec(n), e = t[1] || " ", r = t[2] || ">", u = t[3] || "", i = t[4] || "", o = t[5], a = +t[6], c = t[7], l = t[8], s = t[9], f = 1, h = "", g = !1; switch (l && (l = +l.substring(1)), (o || "0" === e && "=" === r) && (o = e = "0", r = "=", c && (a -= Math.floor((a - 1) / 4))), s) { case "n": c = !0, s = "g"; break; case "%": f = 100, h = "%", s = "f"; break; case "p": f = 100, h = "%", s = "r"; break; case "b": case "o": case "x": case "X": "#" === i && (i = "0" + s.toLowerCase()); case "c": case "d": g = !0, l = 0; break; case "s": f = -1, s = "r" }"#" === i ? i = "" : "$" === i && (i = _a), "r" != s || l || (s = "g"), null != l && ("g" == s ? l = Math.max(1, Math.min(21, l)) : ("e" == s || "f" == s) && (l = Math.max(0, Math.min(20, l)))), s = Ea.get(s) || St; var p = o && c; return function (n) { if (g && n % 1) return ""; var t = 0 > n || 0 === n && 0 > 1 / n ? (n = -n, "-") : u; if (0 > f) { var d = vo.formatPrefix(n, l); n = d.scale(n), h = d.symbol } else n *= f; n = s(n, l); var v = n.lastIndexOf("."), m = 0 > v ? n : n.substring(0, v), y = 0 > v ? "" : Ma + n.substring(v + 1); !o && c && (m = ka(m)); var M = i.length + m.length + y.length + (p ? 0 : t.length), x = a > M ? new Array(M = a - M + 1).join(e) : ""; return p && (m = ka(x + m)), t += i, n = m + y, ("<" === r ? t + n + x : ">" === r ? x + t + n : "^" === r ? x.substring(0, M >>= 1) + t + n + x.substring(M) : t + (p ? n : x + n)) + h } }; var Sa = /(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i, Ea = vo.map({ b: function (n) { return n.toString(2) }, c: function (n) { return String.fromCharCode(n) }, o: function (n) { return n.toString(8) }, x: function (n) { return n.toString(16) }, X: function (n) { return n.toString(16).toUpperCase() }, g: function (n, t) { return n.toPrecision(t) }, e: function (n, t) { return n.toExponential(t) }, f: function (n, t) { return n.toFixed(t) }, r: function (n, t) { return (n = vo.round(n, wt(n, t))).toFixed(Math.max(0, Math.min(20, wt(n * (1 + 1e-15), t)))) } }), ka = pt; if (ba) { var Aa = ba.length; ka = function (n) { for (var t = n.length, e = [], r = 0, u = ba[0]; t > 0 && u > 0;)e.push(n.substring(t -= u, t + u)), u = ba[r = (r + 1) % Aa]; return e.reverse().join(xa) } } vo.geo = {}, Et.prototype = { s: 0, t: 0, add: function (n) { kt(n, this.t, Na), kt(Na.s, this.s, this), this.s ? this.t += Na.t : this.s = Na.t }, reset: function () { this.s = this.t = 0 }, valueOf: function () { return this.s } }; var Na = new Et; vo.geo.stream = function (n, t) { n && qa.hasOwnProperty(n.type) ? qa[n.type](n, t) : At(n, t) }; var qa = { Feature: function (n, t) { At(n.geometry, t) }, FeatureCollection: function (n, t) { for (var e = n.features, r = -1, u = e.length; ++r < u;)At(e[r].geometry, t) } }, Ta = { Sphere: function (n, t) { t.sphere() }, Point: function (n, t) { n = n.coordinates, t.point(n[0], n[1], n[2]) }, MultiPoint: function (n, t) { for (var e = n.coordinates, r = -1, u = e.length; ++r < u;)n = e[r], t.point(n[0], n[1], n[2]) }, LineString: function (n, t) { Nt(n.coordinates, t, 0) }, MultiLineString: function (n, t) { for (var e = n.coordinates, r = -1, u = e.length; ++r < u;)Nt(e[r], t, 0) }, Polygon: function (n, t) { qt(n.coordinates, t) }, MultiPolygon: function (n, t) { for (var e = n.coordinates, r = -1, u = e.length; ++r < u;)qt(e[r], t) }, GeometryCollection: function (n, t) { for (var e = n.geometries, r = -1, u = e.length; ++r < u;)At(e[r], t) } }; vo.geo.area = function (n) { return za = 0, vo.geo.stream(n, Da), za }; var za, Ca = new Et, Da = { sphere: function () { za += 4 * Bo }, point: c, lineStart: c, lineEnd: c, polygonStart: function () { Ca.reset(), Da.lineStart = Tt }, polygonEnd: function () { var n = 2 * Ca; za += 0 > n ? 4 * Bo + n : n, Da.lineStart = Da.lineEnd = Da.point = c } }; vo.geo.bounds = function () { function n(n, t) { M.push(x = [s = n, h = n]), f > t && (f = t), t > g && (g = t) } function t(t, e) { var r = zt([t * Jo, e * Jo]); if (m) { var u = Dt(m, r), i = [u[1], -u[0], 0], o = Dt(i, u); Ht(o), o = Ft(o); var c = t - p, l = c > 0 ? 1 : -1, d = o[0] * Go * l, v = Math.abs(c) > 180; if (v ^ (d > l * p && l * t > d)) { var y = o[1] * Go; y > g && (g = y) } else if (d = (d + 360) % 360 - 180, v ^ (d > l * p && l * t > d)) { var y = -o[1] * Go; f > y && (f = y) } else f > e && (f = e), e > g && (g = e); v ? p > t ? a(s, t) > a(s, h) && (h = t) : a(t, h) > a(s, h) && (s = t) : h >= s ? (s > t && (s = t), t > h && (h = t)) : t > p ? a(s, t) > a(s, h) && (h = t) : a(t, h) > a(s, h) && (s = t) } else n(t, e); m = r, p = t } function e() { b.point = t } function r() { x[0] = s, x[1] = h, b.point = n, m = null } function u(n, e) { if (m) { var r = n - p; y += Math.abs(r) > 180 ? r + (r > 0 ? 360 : -360) : r } else d = n, v = e; Da.point(n, e), t(n, e) } function i() { Da.lineStart() } function o() { u(d, v), Da.lineEnd(), Math.abs(y) > $o && (s = -(h = 180)), x[0] = s, x[1] = h, m = null } function a(n, t) { return (t -= n) < 0 ? t + 360 : t } function c(n, t) { return n[0] - t[0] } function l(n, t) { return t[0] <= t[1] ? t[0] <= n && n <= t[1] : n < t[0] || t[1] < n } var s, f, h, g, p, d, v, m, y, M, x, b = { point: n, lineStart: e, lineEnd: r, polygonStart: function () { b.point = u, b.lineStart = i, b.lineEnd = o, y = 0, Da.polygonStart() }, polygonEnd: function () { Da.polygonEnd(), b.point = n, b.lineStart = e, b.lineEnd = r, 0 > Ca ? (s = -(h = 180), f = -(g = 90)) : y > $o ? g = 90 : -$o > y && (f = -90), x[0] = s, x[1] = h } }; return function (n) { g = h = -(s = f = 1 / 0), M = [], vo.geo.stream(n, b); var t = M.length; if (t) { M.sort(c); for (var e, r = 1, u = M[0], i = [u]; t > r; ++r)e = M[r], l(e[0], u) || l(e[1], u) ? (a(u[0], e[1]) > a(u[0], u[1]) && (u[1] = e[1]), a(e[0], u[1]) > a(u[0], u[1]) && (u[0] = e[0])) : i.push(u = e); for (var o, e, p = -1 / 0, t = i.length - 1, r = 0, u = i[t]; t >= r; u = e, ++r)e = i[r], (o = a(u[1], e[0])) > p && (p = o, s = e[0], h = u[1]) } return M = x = null, 1 / 0 === s || 1 / 0 === f ? [[0 / 0, 0 / 0], [0 / 0, 0 / 0]] : [[s, f], [h, g]] } }(), vo.geo.centroid = function (n) { ja = La = Ha = Fa = Pa = Oa = Ra = Ya = Ia = Ua = Va = 0, vo.geo.stream(n, Za); var t = Ia, e = Ua, r = Va, u = t * t + e * e + r * r; return Wo > u && (t = Oa, e = Ra, r = Ya, $o > La && (t = Ha, e = Fa, r = Pa), u = t * t + e * e + r * r, Wo > u) ? [0 / 0, 0 / 0] : [Math.atan2(e, t) * Go, P(r / Math.sqrt(u)) * Go] }; var ja, La, Ha, Fa, Pa, Oa, Ra, Ya, Ia, Ua, Va, Za = { sphere: c, point: Ot, lineStart: Yt, lineEnd: It, polygonStart: function () { Za.lineStart = Ut }, polygonEnd: function () { Za.lineStart = Yt } }, Xa = Bt(Vt, Kt, ne, te), Ba = [-Bo, 0], $a = 1e9; vo.geo.clipExtent = function () { var n, t, e, r, u, i, o = { stream: function (n) { return u && (u.valid = !1), u = i(n), u.valid = !0, u }, extent: function (a) { return arguments.length ? (i = re(n = +a[0][0], t = +a[0][1], e = +a[1][0], r = +a[1][1]), u && (u.valid = !1, u = null), o) : [[n, t], [e, r]] } }; return o.extent([[0, 0], [960, 500]]) }, (vo.geo.conicEqualArea = function () { return oe(ae) }).raw = ae, vo.geo.albers = function () { return vo.geo.conicEqualArea().rotate([96, 0]).center([-.6, 38.7]).parallels([29.5, 45.5]).scale(1070) }, vo.geo.albersUsa = function () { function n(n) { var i = n[0], o = n[1]; return t = null, e(i, o), t || (r(i, o), t) || u(i, o), t } var t, e, r, u, i = vo.geo.albers(), o = vo.geo.conicEqualArea().rotate([154, 0]).center([-2, 58.5]).parallels([55, 65]), a = vo.geo.conicEqualArea().rotate([157, 0]).center([-3, 19.9]).parallels([8, 18]), c = { point: function (n, e) { t = [n, e] } }; return n.invert = function (n) { var t = i.scale(), e = i.translate(), r = (n[0] - e[0]) / t, u = (n[1] - e[1]) / t; return (u >= .12 && .234 > u && r >= -.425 && -.214 > r ? o : u >= .166 && .234 > u && r >= -.214 && -.115 > r ? a : i).invert(n) }, n.stream = function (n) { var t = i.stream(n), e = o.stream(n), r = a.stream(n); return { point: function (n, u) { t.point(n, u), e.point(n, u), r.point(n, u) }, sphere: function () { t.sphere(), e.sphere(), r.sphere() }, lineStart: function () { t.lineStart(), e.lineStart(), r.lineStart() }, lineEnd: function () { t.lineEnd(), e.lineEnd(), r.lineEnd() }, polygonStart: function () { t.polygonStart(), e.polygonStart(), r.polygonStart() }, polygonEnd: function () { t.polygonEnd(), e.polygonEnd(), r.polygonEnd() } } }, n.precision = function (t) { return arguments.length ? (i.precision(t), o.precision(t), a.precision(t), n) : i.precision() }, n.scale = function (t) { return arguments.length ? (i.scale(t), o.scale(.35 * t), a.scale(t), n.translate(i.translate())) : i.scale() }, n.translate = function (t) { if (!arguments.length) return i.translate(); var l = i.scale(), s = +t[0], f = +t[1]; return e = i.translate(t).clipExtent([[s - .455 * l, f - .238 * l], [s + .455 * l, f + .238 * l]]).stream(c).point, r = o.translate([s - .307 * l, f + .201 * l]).clipExtent([[s - .425 * l + $o, f + .12 * l + $o], [s - .214 * l - $o, f + .234 * l - $o]]).stream(c).point, u = a.translate([s - .205 * l, f + .212 * l]).clipExtent([[s - .214 * l + $o, f + .166 * l + $o], [s - .115 * l - $o, f + .234 * l - $o]]).stream(c).point, n }, n.scale(1070) }; var Wa, Ja, Ga, Ka, Qa, nc, tc = { point: c, lineStart: c, lineEnd: c, polygonStart: function () { Ja = 0, tc.lineStart = ce }, polygonEnd: function () { tc.lineStart = tc.lineEnd = tc.point = c, Wa += Math.abs(Ja / 2) } }, ec = { point: le, lineStart: c, lineEnd: c, polygonStart: c, polygonEnd: c }, rc = { point: he, lineStart: ge, lineEnd: pe, polygonStart: function () { rc.lineStart = de }, polygonEnd: function () { rc.point = he, rc.lineStart = ge, rc.lineEnd = pe } }; vo.geo.transform = function (n) { return { stream: function (t) { var e = new ye(t); for (var r in n) e[r] = n[r]; return e } } }, ye.prototype = { point: function (n, t) { this.stream.point(n, t) }, sphere: function () { this.stream.sphere() }, lineStart: function () { this.stream.lineStart() }, lineEnd: function () { this.stream.lineEnd() }, polygonStart: function () { this.stream.polygonStart() }, polygonEnd: function () { this.stream.polygonEnd() } }, vo.geo.path = function () { function n(n) { return n && ("function" == typeof a && i.pointRadius(+a.apply(this, arguments)), o && o.valid || (o = u(i)), vo.geo.stream(n, o)), i.result() } function t() { return o = null, n } var e, r, u, i, o, a = 4.5; return n.area = function (n) { return Wa = 0, vo.geo.stream(n, u(tc)), Wa }, n.centroid = function (n) { return Ha = Fa = Pa = Oa = Ra = Ya = Ia = Ua = Va = 0, vo.geo.stream(n, u(rc)), Va ? [Ia / Va, Ua / Va] : Ya ? [Oa / Ya, Ra / Ya] : Pa ? [Ha / Pa, Fa / Pa] : [0 / 0, 0 / 0] }, n.bounds = function (n) { return Qa = nc = -(Ga = Ka = 1 / 0), vo.geo.stream(n, u(ec)), [[Ga, Ka], [Qa, nc]] }, n.projection = function (n) { return arguments.length ? (u = (e = n) ? n.stream || Me(n) : pt, t()) : e }, n.context = function (n) { return arguments.length ? (i = null == (r = n) ? new se : new ve(n), "function" != typeof a && i.pointRadius(a), t()) : r }, n.pointRadius = function (t) { return arguments.length ? (a = "function" == typeof t ? t : (i.pointRadius(+t), +t), n) : a }, n.projection(vo.geo.albersUsa()).context(null) }, vo.geo.projection = xe, vo.geo.projectionMutator = be, (vo.geo.equirectangular = function () { return xe(we) }).raw = we.invert = we, vo.geo.rotation = function (n) { function t(t) { return t = n(t[0] * Jo, t[1] * Jo), t[0] *= Go, t[1] *= Go, t } return n = Se(n[0] % 360 * Jo, n[1] * Jo, n.length > 2 ? n[2] * Jo : 0), t.invert = function (t) { return t = n.invert(t[0] * Jo, t[1] * Jo), t[0] *= Go, t[1] *= Go, t }, t }, vo.geo.circle = function () { function n() { var n = "function" == typeof r ? r.apply(this, arguments) : r, t = Se(-n[0] * Jo, -n[1] * Jo, 0).invert, u = []; return e(null, null, 1, { point: function (n, e) { u.push(n = t(n, e)), n[0] *= Go, n[1] *= Go } }), { type: "Polygon", coordinates: [u] } } var t, e, r = [0, 0], u = 6; return n.origin = function (t) { return arguments.length ? (r = t, n) : r }, n.angle = function (r) { return arguments.length ? (e = Ne((t = +r) * Jo, u * Jo), n) : t }, n.precision = function (r) { return arguments.length ? (e = Ne(t * Jo, (u = +r) * Jo), n) : u }, n.angle(90) }, vo.geo.distance = function (n, t) { var e, r = (t[0] - n[0]) * Jo, u = n[1] * Jo, i = t[1] * Jo, o = Math.sin(r), a = Math.cos(r), c = Math.sin(u), l = Math.cos(u), s = Math.sin(i), f = Math.cos(i); return Math.atan2(Math.sqrt((e = f * o) * e + (e = l * s - c * f * a) * e), c * s + l * f * a) }, vo.geo.graticule = function () {
35
- function n() { return { type: "MultiLineString", coordinates: t() } } function t() { return vo.range(Math.ceil(i / v) * v, u, v).map(h).concat(vo.range(Math.ceil(l / m) * m, c, m).map(g)).concat(vo.range(Math.ceil(r / p) * p, e, p).filter(function (n) { return Math.abs(n % v) > $o }).map(s)).concat(vo.range(Math.ceil(a / d) * d, o, d).filter(function (n) { return Math.abs(n % m) > $o }).map(f)) } var e, r, u, i, o, a, c, l, s, f, h, g, p = 10, d = p, v = 90, m = 360, y = 2.5; return n.lines = function () { return t().map(function (n) { return { type: "LineString", coordinates: n } }) }, n.outline = function () { return { type: "Polygon", coordinates: [h(i).concat(g(c).slice(1), h(u).reverse().slice(1), g(l).reverse().slice(1))] } }, n.extent = function (t) { return arguments.length ? n.majorExtent(t).minorExtent(t) : n.minorExtent() }, n.majorExtent = function (t) { return arguments.length ? (i = +t[0][0], u = +t[1][0], l = +t[0][1], c = +t[1][1], i > u && (t = i, i = u, u = t), l > c && (t = l, l = c, c = t), n.precision(y)) : [[i, l], [u, c]] }, n.minorExtent = function (t) {
36
- return arguments.length ? (r = +t[0][0], e = +t[1][0], a = +t[0][1], o = +t[1][1], r > e && (t = r, r = e, e = t), a > o && (t = a, a = o, o = t), n.precision(y)) : [[r, a], [e, o]]
37
- }, n.step = function (t) { return arguments.length ? n.majorStep(t).minorStep(t) : n.minorStep() }, n.majorStep = function (t) { return arguments.length ? (v = +t[0], m = +t[1], n) : [v, m] }, n.minorStep = function (t) { return arguments.length ? (p = +t[0], d = +t[1], n) : [p, d] }, n.precision = function (t) { return arguments.length ? (y = +t, s = Te(a, o, 90), f = ze(r, e, y), h = Te(l, c, 90), g = ze(i, u, y), n) : y }, n.majorExtent([[-180, -90 + $o], [180, 90 - $o]]).minorExtent([[-180, -80 - $o], [180, 80 + $o]])
38
- }, vo.geo.greatArc = function () { function n() { return { type: "LineString", coordinates: [t || r.apply(this, arguments), e || u.apply(this, arguments)] } } var t, e, r = Ce, u = De; return n.distance = function () { return vo.geo.distance(t || r.apply(this, arguments), e || u.apply(this, arguments)) }, n.source = function (e) { return arguments.length ? (r = e, t = "function" == typeof e ? null : e, n) : r }, n.target = function (t) { return arguments.length ? (u = t, e = "function" == typeof t ? null : t, n) : u }, n.precision = function () { return arguments.length ? n : 0 }, n }, vo.geo.interpolate = function (n, t) { return je(n[0] * Jo, n[1] * Jo, t[0] * Jo, t[1] * Jo) }, vo.geo.length = function (n) { return uc = 0, vo.geo.stream(n, ic), uc }; var uc, ic = { sphere: c, point: c, lineStart: Le, lineEnd: c, polygonStart: c, polygonEnd: c }, oc = He(function (n) { return Math.sqrt(2 / (1 + n)) }, function (n) { return 2 * Math.asin(n / 2) }); (vo.geo.azimuthalEqualArea = function () { return xe(oc) }).raw = oc; var ac = He(function (n) { var t = Math.acos(n); return t && t / Math.sin(t) }, pt); (vo.geo.azimuthalEquidistant = function () { return xe(ac) }).raw = ac, (vo.geo.conicConformal = function () { return oe(Fe) }).raw = Fe, (vo.geo.conicEquidistant = function () { return oe(Pe) }).raw = Pe; var cc = He(function (n) { return 1 / n }, Math.atan); (vo.geo.gnomonic = function () { return xe(cc) }).raw = cc, Oe.invert = function (n, t) { return [n, 2 * Math.atan(Math.exp(t)) - Bo / 2] }, (vo.geo.mercator = function () { return Re(Oe) }).raw = Oe; var lc = He(function () { return 1 }, Math.asin); (vo.geo.orthographic = function () { return xe(lc) }).raw = lc; var sc = He(function (n) { return 1 / (1 + n) }, function (n) { return 2 * Math.atan(n) }); (vo.geo.stereographic = function () { return xe(sc) }).raw = sc, Ye.invert = function (n, t) { return [Math.atan2(O(n), Math.cos(t)), P(Math.sin(t) / R(n))] }, (vo.geo.transverseMercator = function () { return Re(Ye) }).raw = Ye, vo.geom = {}, vo.svg = {}, vo.svg.line = function () { return Ie(pt) }; var fc = vo.map({ linear: Ze, "linear-closed": Xe, step: Be, "step-before": $e, "step-after": We, basis: tr, "basis-open": er, "basis-closed": rr, bundle: ur, cardinal: Ke, "cardinal-open": Je, "cardinal-closed": Ge, monotone: sr }); fc.forEach(function (n, t) { t.key = n, t.closed = /-closed$/.test(n) }); var hc = [0, 2 / 3, 1 / 3, 0], gc = [0, 1 / 3, 2 / 3, 0], pc = [0, 1 / 6, 2 / 3, 1 / 6]; vo.geom.hull = function (n) { function t(n) { if (n.length < 3) return []; var t, u, i, o, a, c, l, s, f, h, g, p, d = gt(e), v = gt(r), m = n.length, y = m - 1, M = [], x = [], b = 0; if (d === Ue && r === Ve) t = n; else for (i = 0, t = []; m > i; ++i)t.push([+d.call(this, u = n[i], i), +v.call(this, u, i)]); for (i = 1; m > i; ++i)(t[i][1] < t[b][1] || t[i][1] == t[b][1] && t[i][0] < t[b][0]) && (b = i); for (i = 0; m > i; ++i)i !== b && (c = t[i][1] - t[b][1], a = t[i][0] - t[b][0], M.push({ angle: Math.atan2(c, a), index: i })); for (M.sort(function (n, t) { return n.angle - t.angle }), g = M[0].angle, h = M[0].index, f = 0, i = 1; y > i; ++i) { if (o = M[i].index, g == M[i].angle) { if (a = t[h][0] - t[b][0], c = t[h][1] - t[b][1], l = t[o][0] - t[b][0], s = t[o][1] - t[b][1], a * a + c * c >= l * l + s * s) { M[i].index = -1; continue } M[f].index = -1 } g = M[i].angle, f = i, h = o } for (x.push(b), i = 0, o = 0; 2 > i; ++o)M[o].index > -1 && (x.push(M[o].index), i++); for (p = x.length; y > o; ++o)if (!(M[o].index < 0)) { for (; !fr(x[p - 2], x[p - 1], M[o].index, t);)--p; x[p++] = M[o].index } var _ = []; for (i = p - 1; i >= 0; --i)_.push(n[x[i]]); return _ } var e = Ue, r = Ve; return arguments.length ? t(n) : (t.x = function (n) { return arguments.length ? (e = n, t) : e }, t.y = function (n) { return arguments.length ? (r = n, t) : r }, t) }, vo.geom.polygon = function (n) { return jo(n, dc), n }; var dc = vo.geom.polygon.prototype = []; dc.area = function () { for (var n, t = -1, e = this.length, r = this[e - 1], u = 0; ++t < e;)n = r, r = this[t], u += n[1] * r[0] - n[0] * r[1]; return .5 * u }, dc.centroid = function (n) { var t, e, r = -1, u = this.length, i = 0, o = 0, a = this[u - 1]; for (arguments.length || (n = -1 / (6 * this.area())); ++r < u;)t = a, a = this[r], e = t[0] * a[1] - a[0] * t[1], i += (t[0] + a[0]) * e, o += (t[1] + a[1]) * e; return [i * n, o * n] }, dc.clip = function (n) { for (var t, e, r, u, i, o, a = pr(n), c = -1, l = this.length - pr(this), s = this[l - 1]; ++c < l;) { for (t = n.slice(), n.length = 0, u = this[c], i = t[(r = t.length - a) - 1], e = -1; ++e < r;)o = t[e], hr(o, s, u) ? (hr(i, s, u) || n.push(gr(i, o, s, u)), n.push(o)) : hr(i, s, u) && n.push(gr(i, o, s, u)), i = o; a && n.push(n[0]), s = u } return n }, vo.geom.delaunay = function (n) { var t = n.map(function () { return [] }), e = []; return dr(n, function (e) { t[e.region.l.index].push(n[e.region.r.index]) }), t.forEach(function (t, r) { var u = n[r], i = u[0], o = u[1]; t.forEach(function (n) { n.angle = Math.atan2(n[0] - i, n[1] - o) }), t.sort(function (n, t) { return n.angle - t.angle }); for (var a = 0, c = t.length - 1; c > a; a++)e.push([u, t[a], t[a + 1]]) }), e }, vo.geom.voronoi = function (n) { function t(n) { var t, i, o, a = n.map(function () { return [] }), c = gt(e), l = gt(r), s = n.length, f = 1e6; if (c === Ue && l === Ve) t = n; else for (t = new Array(s), o = 0; s > o; ++o)t[o] = [+c.call(this, i = n[o], o), +l.call(this, i, o)]; if (dr(t, function (n) { var t, e, r, u, i, o; 1 === n.a && n.b >= 0 ? (t = n.ep.r, e = n.ep.l) : (t = n.ep.l, e = n.ep.r), 1 === n.a ? (i = t ? t.y : -f, r = n.c - n.b * i, o = e ? e.y : f, u = n.c - n.b * o) : (r = t ? t.x : -f, i = n.c - n.a * r, u = e ? e.x : f, o = n.c - n.a * u); var c = [r, i], l = [u, o]; a[n.region.l.index].push(c, l), a[n.region.r.index].push(c, l) }), a = a.map(function (n, e) { var r = t[e][0], u = t[e][1], i = n.map(function (n) { return Math.atan2(n[0] - r, n[1] - u) }), o = vo.range(n.length).sort(function (n, t) { return i[n] - i[t] }); return o.filter(function (n, t) { return !t || i[n] - i[o[t - 1]] > $o }).map(function (t) { return n[t] }) }), a.forEach(function (n, e) { var r = n.length; if (!r) return n.push([-f, -f], [-f, f], [f, f], [f, -f]); if (!(r > 2)) { var u = t[e], i = n[0], o = n[1], a = u[0], c = u[1], l = i[0], s = i[1], h = o[0], g = o[1], p = Math.abs(h - l), d = g - s; if (Math.abs(d) < $o) { var v = s > c ? -f : f; n.push([-f, v], [f, v]) } else if ($o > p) { var m = l > a ? -f : f; n.push([m, -f], [m, f]) } else { var v = (l - a) * (g - s) > (h - l) * (s - c) ? f : -f, y = Math.abs(d) - p; Math.abs(y) < $o ? n.push([0 > d ? v : -v, v]) : (y > 0 && (v *= -1), n.push([-f, v], [f, v])) } } }), u) for (o = 0; s > o; ++o)u.clip(a[o]); for (o = 0; s > o; ++o)a[o].point = n[o]; return a } var e = Ue, r = Ve, u = null; return arguments.length ? t(n) : (t.x = function (n) { return arguments.length ? (e = n, t) : e }, t.y = function (n) { return arguments.length ? (r = n, t) : r }, t.clipExtent = function (n) { if (!arguments.length) return u && [u[0], u[2]]; if (null == n) u = null; else { var e = +n[0][0], r = +n[0][1], i = +n[1][0], o = +n[1][1]; u = vo.geom.polygon([[e, r], [e, o], [i, o], [i, r]]) } return t }, t.size = function (n) { return arguments.length ? t.clipExtent(n && [[0, 0], n]) : u && u[2] }, t.links = function (n) { var t, u, i, o = n.map(function () { return [] }), a = [], c = gt(e), l = gt(r), s = n.length; if (c === Ue && l === Ve) t = n; else for (t = new Array(s), i = 0; s > i; ++i)t[i] = [+c.call(this, u = n[i], i), +l.call(this, u, i)]; return dr(t, function (t) { var e = t.region.l.index, r = t.region.r.index; o[e][r] || (o[e][r] = o[r][e] = !0, a.push({ source: n[e], target: n[r] })) }), a }, t.triangles = function (n) { if (e === Ue && r === Ve) return vo.geom.delaunay(n); for (var t, u = new Array(c), i = gt(e), o = gt(r), a = -1, c = n.length; ++a < c;)(u[a] = [+i.call(this, t = n[a], a), +o.call(this, t, a)]).data = t; return vo.geom.delaunay(u).map(function (n) { return n.map(function (n) { return n.data }) }) }, t) }; var vc = { l: "r", r: "l" }; vo.geom.quadtree = function (n, t, e, r, u) { function i(n) { function i(n, t, e, r, u, i, o, a) { if (!isNaN(e) && !isNaN(r)) if (n.leaf) { var c = n.x, s = n.y; if (null != c) if (Math.abs(c - e) + Math.abs(s - r) < .01) l(n, t, e, r, u, i, o, a); else { var f = n.point; n.x = n.y = n.point = null, l(n, f, c, s, u, i, o, a), l(n, t, e, r, u, i, o, a) } else n.x = e, n.y = r, n.point = t } else l(n, t, e, r, u, i, o, a) } function l(n, t, e, r, u, o, a, c) { var l = .5 * (u + a), s = .5 * (o + c), f = e >= l, h = r >= s, g = (h << 1) + f; n.leaf = !1, n = n.nodes[g] || (n.nodes[g] = yr()), f ? u = l : a = l, h ? o = s : c = s, i(n, t, e, r, u, o, a, c) } var s, f, h, g, p, d, v, m, y, M = gt(a), x = gt(c); if (null != t) d = t, v = e, m = r, y = u; else if (m = y = -(d = v = 1 / 0), f = [], h = [], p = n.length, o) for (g = 0; p > g; ++g)s = n[g], s.x < d && (d = s.x), s.y < v && (v = s.y), s.x > m && (m = s.x), s.y > y && (y = s.y), f.push(s.x), h.push(s.y); else for (g = 0; p > g; ++g) { var b = +M(s = n[g], g), _ = +x(s, g); d > b && (d = b), v > _ && (v = _), b > m && (m = b), _ > y && (y = _), f.push(b), h.push(_) } var w = m - d, S = y - v; w > S ? y = v + w : m = d + S; var E = yr(); if (E.add = function (n) { i(E, n, +M(n, ++g), +x(n, g), d, v, m, y) }, E.visit = function (n) { Mr(n, E, d, v, m, y) }, g = -1, null == t) { for (; ++g < p;)i(E, n[g], f[g], h[g], d, v, m, y); --g } else n.forEach(E.add); return f = h = n = s = null, E } var o, a = Ue, c = Ve; return (o = arguments.length) ? (a = vr, c = mr, 3 === o && (u = e, r = t, e = t = 0), i(n)) : (i.x = function (n) { return arguments.length ? (a = n, i) : a }, i.y = function (n) { return arguments.length ? (c = n, i) : c }, i.extent = function (n) { return arguments.length ? (null == n ? t = e = r = u = null : (t = +n[0][0], e = +n[0][1], r = +n[1][0], u = +n[1][1]), i) : null == t ? null : [[t, e], [r, u]] }, i.size = function (n) { return arguments.length ? (null == n ? t = e = r = u = null : (t = e = 0, r = +n[0], u = +n[1]), i) : null == t ? null : [r - t, u - e] }, i) }, vo.interpolateRgb = xr, vo.interpolateObject = br, vo.interpolateNumber = _r, vo.interpolateString = wr; var mc = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g; vo.interpolate = Sr, vo.interpolators = [function (n, t) { var e = typeof t; return ("string" === e ? ha.has(t) || /^(#|rgb\(|hsl\()/.test(t) ? xr : wr : t instanceof U ? xr : "object" === e ? Array.isArray(t) ? Er : br : _r)(n, t) }], vo.interpolateArray = Er; var yc = function () { return pt }, Mc = vo.map({ linear: yc, poly: Cr, quad: function () { return qr }, cubic: function () { return Tr }, sin: function () { return Dr }, exp: function () { return jr }, circle: function () { return Lr }, elastic: Hr, back: Fr, bounce: function () { return Pr } }), xc = vo.map({ "in": pt, out: Ar, "in-out": Nr, "out-in": function (n) { return Nr(Ar(n)) } }); vo.ease = function (n) { var t = n.indexOf("-"), e = t >= 0 ? n.substring(0, t) : n, r = t >= 0 ? n.substring(t + 1) : "in"; return e = Mc.get(e) || yc, r = xc.get(r) || pt, kr(r(e.apply(null, Array.prototype.slice.call(arguments, 1)))) }, vo.interpolateHcl = Or, vo.interpolateHsl = Rr, vo.interpolateLab = Yr, vo.interpolateRound = Ir, vo.transform = function (n) { var t = Mo.createElementNS(vo.ns.prefix.svg, "g"); return (vo.transform = function (n) { if (null != n) { t.setAttribute("transform", n); var e = t.transform.baseVal.consolidate() } return new Ur(e ? e.matrix : bc) })(n) }, Ur.prototype.toString = function () { return "translate(" + this.translate + ")rotate(" + this.rotate + ")skewX(" + this.skew + ")scale(" + this.scale + ")" }; var bc = { a: 1, b: 0, c: 0, d: 1, e: 0, f: 0 }; vo.interpolateTransform = Br, vo.layout = {}, vo.layout.bundle = function () { return function (n) { for (var t = [], e = -1, r = n.length; ++e < r;)t.push(Jr(n[e])); return t } }, vo.layout.chord = function () { function n() { var n, l, f, h, g, p = {}, d = [], v = vo.range(i), m = []; for (e = [], r = [], n = 0, h = -1; ++h < i;) { for (l = 0, g = -1; ++g < i;)l += u[h][g]; d.push(l), m.push(vo.range(i)), n += l } for (o && v.sort(function (n, t) { return o(d[n], d[t]) }), a && m.forEach(function (n, t) { n.sort(function (n, e) { return a(u[t][n], u[t][e]) }) }), n = (2 * Bo - s * i) / n, l = 0, h = -1; ++h < i;) { for (f = l, g = -1; ++g < i;) { var y = v[h], M = m[y][g], x = u[y][M], b = l, _ = l += x * n; p[y + "-" + M] = { index: y, subindex: M, startAngle: b, endAngle: _, value: x } } r[y] = { index: y, startAngle: f, endAngle: l, value: (l - f) / n }, l += s } for (h = -1; ++h < i;)for (g = h - 1; ++g < i;) { var w = p[h + "-" + g], S = p[g + "-" + h]; (w.value || S.value) && e.push(w.value < S.value ? { source: S, target: w } : { source: w, target: S }) } c && t() } function t() { e.sort(function (n, t) { return c((n.source.value + n.target.value) / 2, (t.source.value + t.target.value) / 2) }) } var e, r, u, i, o, a, c, l = {}, s = 0; return l.matrix = function (n) { return arguments.length ? (i = (u = n) && u.length, e = r = null, l) : u }, l.padding = function (n) { return arguments.length ? (s = n, e = r = null, l) : s }, l.sortGroups = function (n) { return arguments.length ? (o = n, e = r = null, l) : o }, l.sortSubgroups = function (n) { return arguments.length ? (a = n, e = null, l) : a }, l.sortChords = function (n) { return arguments.length ? (c = n, e && t(), l) : c }, l.chords = function () { return e || n(), e }, l.groups = function () { return r || n(), r }, l }, vo.layout.force = function () { function n(n) { return function (t, e, r, u) { if (t.point !== n) { var i = t.cx - n.x, o = t.cy - n.y, a = 1 / Math.sqrt(i * i + o * o); if (d > (u - e) * a) { var c = t.charge * a * a; return n.px -= i * c, n.py -= o * c, !0 } if (t.point && isFinite(a)) { var c = t.pointCharge * a * a; n.px -= i * c, n.py -= o * c } } return !t.charge } } function t(n) { n.px = vo.event.x, n.py = vo.event.y, a.resume() } var e, r, u, i, o, a = {}, c = vo.dispatch("start", "tick", "end"), l = [1, 1], s = .9, f = _c, h = wc, g = -30, p = .1, d = .8, v = [], m = []; return a.tick = function () { if ((r *= .99) < .005) return c.end({ type: "end", alpha: r = 0 }), !0; var t, e, a, f, h, d, y, M, x, b = v.length, _ = m.length; for (e = 0; _ > e; ++e)a = m[e], f = a.source, h = a.target, M = h.x - f.x, x = h.y - f.y, (d = M * M + x * x) && (d = r * i[e] * ((d = Math.sqrt(d)) - u[e]) / d, M *= d, x *= d, h.x -= M * (y = f.weight / (h.weight + f.weight)), h.y -= x * y, f.x += M * (y = 1 - y), f.y += x * y); if ((y = r * p) && (M = l[0] / 2, x = l[1] / 2, e = -1, y)) for (; ++e < b;)a = v[e], a.x += (M - a.x) * y, a.y += (x - a.y) * y; if (g) for (ru(t = vo.geom.quadtree(v), r, o), e = -1; ++e < b;)(a = v[e]).fixed || t.visit(n(a)); for (e = -1; ++e < b;)a = v[e], a.fixed ? (a.x = a.px, a.y = a.py) : (a.x -= (a.px - (a.px = a.x)) * s, a.y -= (a.py - (a.py = a.y)) * s); c.tick({ type: "tick", alpha: r }) }, a.nodes = function (n) { return arguments.length ? (v = n, a) : v }, a.links = function (n) { return arguments.length ? (m = n, a) : m }, a.size = function (n) { return arguments.length ? (l = n, a) : l }, a.linkDistance = function (n) { return arguments.length ? (f = "function" == typeof n ? n : +n, a) : f }, a.distance = a.linkDistance, a.linkStrength = function (n) { return arguments.length ? (h = "function" == typeof n ? n : +n, a) : h }, a.friction = function (n) { return arguments.length ? (s = +n, a) : s }, a.charge = function (n) { return arguments.length ? (g = "function" == typeof n ? n : +n, a) : g }, a.gravity = function (n) { return arguments.length ? (p = +n, a) : p }, a.theta = function (n) { return arguments.length ? (d = +n, a) : d }, a.alpha = function (n) { return arguments.length ? (n = +n, r ? r = n > 0 ? n : 0 : n > 0 && (c.start({ type: "start", alpha: r = n }), vo.timer(a.tick)), a) : r }, a.start = function () { function n(n, r) { for (var u, i = t(e), o = -1, a = i.length; ++o < a;)if (!isNaN(u = i[o][n])) return u; return Math.random() * r } function t() { if (!c) { for (c = [], r = 0; p > r; ++r)c[r] = []; for (r = 0; d > r; ++r) { var n = m[r]; c[n.source.index].push(n.target), c[n.target.index].push(n.source) } } return c[e] } var e, r, c, s, p = v.length, d = m.length, y = l[0], M = l[1]; for (e = 0; p > e; ++e)(s = v[e]).index = e, s.weight = 0; for (e = 0; d > e; ++e)s = m[e], "number" == typeof s.source && (s.source = v[s.source]), "number" == typeof s.target && (s.target = v[s.target]), ++s.source.weight, ++s.target.weight; for (e = 0; p > e; ++e)s = v[e], isNaN(s.x) && (s.x = n("x", y)), isNaN(s.y) && (s.y = n("y", M)), isNaN(s.px) && (s.px = s.x), isNaN(s.py) && (s.py = s.y); if (u = [], "function" == typeof f) for (e = 0; d > e; ++e)u[e] = +f.call(this, m[e], e); else for (e = 0; d > e; ++e)u[e] = f; if (i = [], "function" == typeof h) for (e = 0; d > e; ++e)i[e] = +h.call(this, m[e], e); else for (e = 0; d > e; ++e)i[e] = h; if (o = [], "function" == typeof g) for (e = 0; p > e; ++e)o[e] = +g.call(this, v[e], e); else for (e = 0; p > e; ++e)o[e] = g; return a.resume() }, a.resume = function () { return a.alpha(.1) }, a.stop = function () { return a.alpha(0) }, a.drag = function () { return e || (e = vo.behavior.drag().origin(pt).on("dragstart.force", Qr).on("drag.force", t).on("dragend.force", nu)), arguments.length ? (this.on("mouseover.force", tu).on("mouseout.force", eu).call(e), void 0) : e }, vo.rebind(a, c, "on") }; var _c = 20, wc = 1; vo.layout.hierarchy = function () { function n(t, o, a) { var c = u.call(e, t, o); if (t.depth = o, a.push(t), c && (l = c.length)) { for (var l, s, f = -1, h = t.children = [], g = 0, p = o + 1; ++f < l;)s = n(c[f], p, a), s.parent = t, h.push(s), g += s.value; r && h.sort(r), i && (t.value = g) } else i && (t.value = +i.call(e, t, o) || 0); return t } function t(n, r) { var u = n.children, o = 0; if (u && (a = u.length)) for (var a, c = -1, l = r + 1; ++c < a;)o += t(u[c], l); else i && (o = +i.call(e, n, r) || 0); return i && (n.value = o), o } function e(t) { var e = []; return n(t, 0, e), e } var r = au, u = iu, i = ou; return e.sort = function (n) { return arguments.length ? (r = n, e) : r }, e.children = function (n) { return arguments.length ? (u = n, e) : u }, e.value = function (n) { return arguments.length ? (i = n, e) : i }, e.revalue = function (n) { return t(n, 0), n }, e }, vo.layout.partition = function () { function n(t, e, r, u) { var i = t.children; if (t.x = e, t.y = t.depth * u, t.dx = r, t.dy = u, i && (o = i.length)) { var o, a, c, l = -1; for (r = t.value ? r / t.value : 0; ++l < o;)n(a = i[l], e, c = a.value * r, u), e += c } } function t(n) { var e = n.children, r = 0; if (e && (u = e.length)) for (var u, i = -1; ++i < u;)r = Math.max(r, t(e[i])); return 1 + r } function e(e, i) { var o = r.call(this, e, i); return n(o[0], 0, u[0], u[1] / t(o[0])), o } var r = vo.layout.hierarchy(), u = [1, 1]; return e.size = function (n) { return arguments.length ? (u = n, e) : u }, uu(e, r) }, vo.layout.pie = function () { function n(i) { var o = i.map(function (e, r) { return +t.call(n, e, r) }), a = +("function" == typeof r ? r.apply(this, arguments) : r), c = (("function" == typeof u ? u.apply(this, arguments) : u) - a) / vo.sum(o), l = vo.range(i.length); null != e && l.sort(e === Sc ? function (n, t) { return o[t] - o[n] } : function (n, t) { return e(i[n], i[t]) }); var s = []; return l.forEach(function (n) { var t; s[n] = { data: i[n], value: t = o[n], startAngle: a, endAngle: a += t * c } }), s } var t = Number, e = Sc, r = 0, u = 2 * Bo; return n.value = function (e) { return arguments.length ? (t = e, n) : t }, n.sort = function (t) { return arguments.length ? (e = t, n) : e }, n.startAngle = function (t) { return arguments.length ? (r = t, n) : r }, n.endAngle = function (t) { return arguments.length ? (u = t, n) : u }, n }; var Sc = {}; vo.layout.stack = function () { function n(a, c) { var l = a.map(function (e, r) { return t.call(n, e, r) }), s = l.map(function (t) { return t.map(function (t, e) { return [i.call(n, t, e), o.call(n, t, e)] }) }), f = e.call(n, s, c); l = vo.permute(l, f), s = vo.permute(s, f); var h, g, p, d = r.call(n, s, c), v = l.length, m = l[0].length; for (g = 0; m > g; ++g)for (u.call(n, l[0][g], p = d[g], s[0][g][1]), h = 1; v > h; ++h)u.call(n, l[h][g], p += s[h - 1][g][1], s[h][g][1]); return a } var t = pt, e = hu, r = gu, u = fu, i = lu, o = su; return n.values = function (e) { return arguments.length ? (t = e, n) : t }, n.order = function (t) { return arguments.length ? (e = "function" == typeof t ? t : Ec.get(t) || hu, n) : e }, n.offset = function (t) { return arguments.length ? (r = "function" == typeof t ? t : kc.get(t) || gu, n) : r }, n.x = function (t) { return arguments.length ? (i = t, n) : i }, n.y = function (t) { return arguments.length ? (o = t, n) : o }, n.out = function (t) { return arguments.length ? (u = t, n) : u }, n }; var Ec = vo.map({ "inside-out": function (n) { var t, e, r = n.length, u = n.map(pu), i = n.map(du), o = vo.range(r).sort(function (n, t) { return u[n] - u[t] }), a = 0, c = 0, l = [], s = []; for (t = 0; r > t; ++t)e = o[t], c > a ? (a += i[e], l.push(e)) : (c += i[e], s.push(e)); return s.reverse().concat(l) }, reverse: function (n) { return vo.range(n.length).reverse() }, "default": hu }), kc = vo.map({ silhouette: function (n) { var t, e, r, u = n.length, i = n[0].length, o = [], a = 0, c = []; for (e = 0; i > e; ++e) { for (t = 0, r = 0; u > t; t++)r += n[t][e][1]; r > a && (a = r), o.push(r) } for (e = 0; i > e; ++e)c[e] = (a - o[e]) / 2; return c }, wiggle: function (n) { var t, e, r, u, i, o, a, c, l, s = n.length, f = n[0], h = f.length, g = []; for (g[0] = c = l = 0, e = 1; h > e; ++e) { for (t = 0, u = 0; s > t; ++t)u += n[t][e][1]; for (t = 0, i = 0, a = f[e][0] - f[e - 1][0]; s > t; ++t) { for (r = 0, o = (n[t][e][1] - n[t][e - 1][1]) / (2 * a); t > r; ++r)o += (n[r][e][1] - n[r][e - 1][1]) / a; i += o * n[t][e][1] } g[e] = c -= u ? i / u * a : 0, l > c && (l = c) } for (e = 0; h > e; ++e)g[e] -= l; return g }, expand: function (n) { var t, e, r, u = n.length, i = n[0].length, o = 1 / u, a = []; for (e = 0; i > e; ++e) { for (t = 0, r = 0; u > t; t++)r += n[t][e][1]; if (r) for (t = 0; u > t; t++)n[t][e][1] /= r; else for (t = 0; u > t; t++)n[t][e][1] = o } for (e = 0; i > e; ++e)a[e] = 0; return a }, zero: gu }); vo.layout.histogram = function () { function n(n, i) { for (var o, a, c = [], l = n.map(e, this), s = r.call(this, l, i), f = u.call(this, s, l, i), i = -1, h = l.length, g = f.length - 1, p = t ? 1 : 1 / h; ++i < g;)o = c[i] = [], o.dx = f[i + 1] - (o.x = f[i]), o.y = 0; if (g > 0) for (i = -1; ++i < h;)a = l[i], a >= s[0] && a <= s[1] && (o = c[vo.bisect(f, a, 1, g) - 1], o.y += p, o.push(n[i])); return c } var t = !0, e = Number, r = Mu, u = mu; return n.value = function (t) { return arguments.length ? (e = t, n) : e }, n.range = function (t) { return arguments.length ? (r = gt(t), n) : r }, n.bins = function (t) { return arguments.length ? (u = "number" == typeof t ? function (n) { return yu(n, t) } : gt(t), n) : u }, n.frequency = function (e) { return arguments.length ? (t = !!e, n) : t }, n }, vo.layout.tree = function () { function n(n, i) { function o(n, t) { var r = n.children, u = n._tree; if (r && (i = r.length)) { for (var i, a, l, s = r[0], f = s, h = -1; ++h < i;)l = r[h], o(l, a), f = c(l, a, f), a = l; Nu(n); var g = .5 * (s._tree.prelim + l._tree.prelim); t ? (u.prelim = t._tree.prelim + e(n, t), u.mod = u.prelim - g) : u.prelim = g } else t && (u.prelim = t._tree.prelim + e(n, t)) } function a(n, t) { n.x = n._tree.prelim + t; var e = n.children; if (e && (r = e.length)) { var r, u = -1; for (t += n._tree.mod; ++u < r;)a(e[u], t) } } function c(n, t, r) { if (t) { for (var u, i = n, o = n, a = t, c = n.parent.children[0], l = i._tree.mod, s = o._tree.mod, f = a._tree.mod, h = c._tree.mod; a = _u(a), i = bu(i), a && i;)c = bu(c), o = _u(o), o._tree.ancestor = n, u = a._tree.prelim + f - i._tree.prelim - l + e(a, i), u > 0 && (qu(Tu(a, n, r), n, u), l += u, s += u), f += a._tree.mod, l += i._tree.mod, h += c._tree.mod, s += o._tree.mod; a && !_u(o) && (o._tree.thread = a, o._tree.mod += f - s), i && !bu(c) && (c._tree.thread = i, c._tree.mod += l - h, r = n) } return r } var l = t.call(this, n, i), s = l[0]; Au(s, function (n, t) { n._tree = { ancestor: n, prelim: 0, mod: 0, change: 0, shift: 0, number: t ? t._tree.number + 1 : 0 } }), o(s), a(s, -s._tree.prelim); var f = wu(s, Eu), h = wu(s, Su), g = wu(s, ku), p = f.x - e(f, h) / 2, d = h.x + e(h, f) / 2, v = g.depth || 1; return Au(s, u ? function (n) { n.x *= r[0], n.y = n.depth * r[1], delete n._tree } : function (n) { n.x = (n.x - p) / (d - p) * r[0], n.y = n.depth / v * r[1], delete n._tree }), l } var t = vo.layout.hierarchy().sort(null).value(null), e = xu, r = [1, 1], u = !1; return n.separation = function (t) { return arguments.length ? (e = t, n) : e }, n.size = function (t) { return arguments.length ? (u = null == (r = t), n) : u ? null : r }, n.nodeSize = function (t) { return arguments.length ? (u = null != (r = t), n) : u ? r : null }, uu(n, t) }, vo.layout.pack = function () { function n(n, i) { var o = e.call(this, n, i), a = o[0], c = u[0], l = u[1], s = null == t ? Math.sqrt : "function" == typeof t ? t : function () { return t }; if (a.x = a.y = 0, Au(a, function (n) { n.r = +s(n.value) }), Au(a, Lu), r) { var f = r * (t ? 1 : Math.max(2 * a.r / c, 2 * a.r / l)) / 2; Au(a, function (n) { n.r += f }), Au(a, Lu), Au(a, function (n) { n.r -= f }) } return Pu(a, c / 2, l / 2, t ? 1 : 1 / Math.max(2 * a.r / c, 2 * a.r / l)), o } var t, e = vo.layout.hierarchy().sort(zu), r = 0, u = [1, 1]; return n.size = function (t) { return arguments.length ? (u = t, n) : u }, n.radius = function (e) { return arguments.length ? (t = null == e || "function" == typeof e ? e : +e, n) : t }, n.padding = function (t) { return arguments.length ? (r = +t, n) : r }, uu(n, e) }, vo.layout.cluster = function () { function n(n, i) { var o, a = t.call(this, n, i), c = a[0], l = 0; Au(c, function (n) { var t = n.children; t && t.length ? (n.x = Yu(t), n.y = Ru(t)) : (n.x = o ? l += e(n, o) : 0, n.y = 0, o = n) }); var s = Iu(c), f = Uu(c), h = s.x - e(s, f) / 2, g = f.x + e(f, s) / 2; return Au(c, u ? function (n) { n.x = (n.x - c.x) * r[0], n.y = (c.y - n.y) * r[1] } : function (n) { n.x = (n.x - h) / (g - h) * r[0], n.y = (1 - (c.y ? n.y / c.y : 1)) * r[1] }), a } var t = vo.layout.hierarchy().sort(null).value(null), e = xu, r = [1, 1], u = !1; return n.separation = function (t) { return arguments.length ? (e = t, n) : e }, n.size = function (t) { return arguments.length ? (u = null == (r = t), n) : u ? null : r }, n.nodeSize = function (t) { return arguments.length ? (u = null != (r = t), n) : u ? r : null }, uu(n, t) }, vo.layout.treemap = function () { function n(n, t) { for (var e, r, u = -1, i = n.length; ++u < i;)r = (e = n[u]).value * (0 > t ? 0 : t), e.area = isNaN(r) || 0 >= r ? 0 : r } function t(e) { var i = e.children; if (i && i.length) { var o, a, c, l = f(e), s = [], h = i.slice(), p = 1 / 0, d = "slice" === g ? l.dx : "dice" === g ? l.dy : "slice-dice" === g ? 1 & e.depth ? l.dy : l.dx : Math.min(l.dx, l.dy); for (n(h, l.dx * l.dy / e.value), s.area = 0; (c = h.length) > 0;)s.push(o = h[c - 1]), s.area += o.area, "squarify" !== g || (a = r(s, d)) <= p ? (h.pop(), p = a) : (s.area -= s.pop().area, u(s, d, l, !1), d = Math.min(l.dx, l.dy), s.length = s.area = 0, p = 1 / 0); s.length && (u(s, d, l, !0), s.length = s.area = 0), i.forEach(t) } } function e(t) { var r = t.children; if (r && r.length) { var i, o = f(t), a = r.slice(), c = []; for (n(a, o.dx * o.dy / t.value), c.area = 0; i = a.pop();)c.push(i), c.area += i.area, null != i.z && (u(c, i.z ? o.dx : o.dy, o, !a.length), c.length = c.area = 0); r.forEach(e) } } function r(n, t) { for (var e, r = n.area, u = 0, i = 1 / 0, o = -1, a = n.length; ++o < a;)(e = n[o].area) && (i > e && (i = e), e > u && (u = e)); return r *= r, t *= t, r ? Math.max(t * u * p / r, r / (t * i * p)) : 1 / 0 } function u(n, t, e, r) { var u, i = -1, o = n.length, a = e.x, l = e.y, s = t ? c(n.area / t) : 0; if (t == e.dx) { for ((r || s > e.dy) && (s = e.dy); ++i < o;)u = n[i], u.x = a, u.y = l, u.dy = s, a += u.dx = Math.min(e.x + e.dx - a, s ? c(u.area / s) : 0); u.z = !0, u.dx += e.x + e.dx - a, e.y += s, e.dy -= s } else { for ((r || s > e.dx) && (s = e.dx); ++i < o;)u = n[i], u.x = a, u.y = l, u.dx = s, l += u.dy = Math.min(e.y + e.dy - l, s ? c(u.area / s) : 0); u.z = !1, u.dy += e.y + e.dy - l, e.x += s, e.dx -= s } } function i(r) { var u = o || a(r), i = u[0]; return i.x = 0, i.y = 0, i.dx = l[0], i.dy = l[1], o && a.revalue(i), n([i], i.dx * i.dy / i.value), (o ? e : t)(i), h && (o = u), u } var o, a = vo.layout.hierarchy(), c = Math.round, l = [1, 1], s = null, f = Vu, h = !1, g = "squarify", p = .5 * (1 + Math.sqrt(5)); return i.size = function (n) { return arguments.length ? (l = n, i) : l }, i.padding = function (n) { function t(t) { var e = n.call(i, t, t.depth); return null == e ? Vu(t) : Zu(t, "number" == typeof e ? [e, e, e, e] : e) } function e(t) { return Zu(t, n) } if (!arguments.length) return s; var r; return f = null == (s = n) ? Vu : "function" == (r = typeof n) ? t : "number" === r ? (n = [n, n, n, n], e) : e, i }, i.round = function (n) { return arguments.length ? (c = n ? Math.round : Number, i) : c != Number }, i.sticky = function (n) { return arguments.length ? (h = n, o = null, i) : h }, i.ratio = function (n) { return arguments.length ? (p = n, i) : p }, i.mode = function (n) { return arguments.length ? (g = n + "", i) : g }, uu(i, a) }, vo.random = { normal: function (n, t) { var e = arguments.length; return 2 > e && (t = 1), 1 > e && (n = 0), function () { var e, r, u; do e = 2 * Math.random() - 1, r = 2 * Math.random() - 1, u = e * e + r * r; while (!u || u > 1); return n + t * e * Math.sqrt(-2 * Math.log(u) / u) } }, logNormal: function () { var n = vo.random.normal.apply(vo, arguments); return function () { return Math.exp(n()) } }, irwinHall: function (n) { return function () { for (var t = 0, e = 0; n > e; e++)t += Math.random(); return t / n } } }, vo.scale = {}; var Ac = { floor: pt, ceil: pt }; vo.scale.linear = function () { return Ku([0, 1], [0, 1], Sr, !1) }, vo.scale.log = function () { return ui(vo.scale.linear().domain([0, 1]), 10, !0, [1, 10]) }; var Nc = vo.format(".0e"), qc = { floor: function (n) { return -Math.ceil(-n) }, ceil: function (n) { return -Math.floor(-n) } }; vo.scale.pow = function () { return ii(vo.scale.linear(), 1, [0, 1]) }, vo.scale.sqrt = function () { return vo.scale.pow().exponent(.5) }, vo.scale.ordinal = function () { return ai([], { t: "range", a: [[]] }) }, vo.scale.category10 = function () { return vo.scale.ordinal().range(Tc) }, vo.scale.category20 = function () { return vo.scale.ordinal().range(zc) }, vo.scale.category20b = function () { return vo.scale.ordinal().range(Cc) }, vo.scale.category20c = function () { return vo.scale.ordinal().range(Dc) }; var Tc = [2062260, 16744206, 2924588, 14034728, 9725885, 9197131, 14907330, 8355711, 12369186, 1556175].map(ut), zc = [2062260, 11454440, 16744206, 16759672, 2924588, 10018698, 14034728, 16750742, 9725885, 12955861, 9197131, 12885140, 14907330, 16234194, 8355711, 13092807, 12369186, 14408589, 1556175, 10410725].map(ut), Cc = [3750777, 5395619, 7040719, 10264286, 6519097, 9216594, 11915115, 13556636, 9202993, 12426809, 15186514, 15190932, 8666169, 11356490, 14049643, 15177372, 8077683, 10834324, 13528509, 14589654].map(ut), Dc = [3244733, 7057110, 10406625, 13032431, 15095053, 16616764, 16625259, 16634018, 3253076, 7652470, 10607003, 13101504, 7695281, 10394312, 12369372, 14342891, 6513507, 9868950, 12434877, 14277081].map(ut); vo.scale.quantile = function () { return ci([], []) }, vo.scale.quantize = function () { return li(0, 1, [0, 1]) }, vo.scale.threshold = function () { return si([.5], [0, 1]) }, vo.scale.identity = function () { return fi([0, 1]) }, vo.svg.arc = function () { function n() { var n = t.apply(this, arguments), i = e.apply(this, arguments), o = r.apply(this, arguments) + jc, a = u.apply(this, arguments) + jc, c = (o > a && (c = o, o = a, a = c), a - o), l = Bo > c ? "0" : "1", s = Math.cos(o), f = Math.sin(o), h = Math.cos(a), g = Math.sin(a); return c >= Lc ? n ? "M0," + i + "A" + i + "," + i + " 0 1,1 0," + -i + "A" + i + "," + i + " 0 1,1 0," + i + "M0," + n + "A" + n + "," + n + " 0 1,0 0," + -n + "A" + n + "," + n + " 0 1,0 0," + n + "Z" : "M0," + i + "A" + i + "," + i + " 0 1,1 0," + -i + "A" + i + "," + i + " 0 1,1 0," + i + "Z" : n ? "M" + i * s + "," + i * f + "A" + i + "," + i + " 0 " + l + ",1 " + i * h + "," + i * g + "L" + n * h + "," + n * g + "A" + n + "," + n + " 0 " + l + ",0 " + n * s + "," + n * f + "Z" : "M" + i * s + "," + i * f + "A" + i + "," + i + " 0 " + l + ",1 " + i * h + "," + i * g + "L0,0" + "Z" } var t = hi, e = gi, r = pi, u = di; return n.innerRadius = function (e) { return arguments.length ? (t = gt(e), n) : t }, n.outerRadius = function (t) { return arguments.length ? (e = gt(t), n) : e }, n.startAngle = function (t) { return arguments.length ? (r = gt(t), n) : r }, n.endAngle = function (t) { return arguments.length ? (u = gt(t), n) : u }, n.centroid = function () { var n = (t.apply(this, arguments) + e.apply(this, arguments)) / 2, i = (r.apply(this, arguments) + u.apply(this, arguments)) / 2 + jc; return [Math.cos(i) * n, Math.sin(i) * n] }, n }; var jc = -Bo / 2, Lc = 2 * Bo - 1e-6; vo.svg.line.radial = function () { var n = Ie(vi); return n.radius = n.x, delete n.x, n.angle = n.y, delete n.y, n }, $e.reverse = We, We.reverse = $e, vo.svg.area = function () { return mi(pt) }, vo.svg.area.radial = function () { var n = mi(vi); return n.radius = n.x, delete n.x, n.innerRadius = n.x0, delete n.x0, n.outerRadius = n.x1, delete n.x1, n.angle = n.y, delete n.y, n.startAngle = n.y0, delete n.y0, n.endAngle = n.y1, delete n.y1, n }, vo.svg.chord = function () { function n(n, a) { var c = t(this, i, n, a), l = t(this, o, n, a); return "M" + c.p0 + r(c.r, c.p1, c.a1 - c.a0) + (e(c, l) ? u(c.r, c.p1, c.r, c.p0) : u(c.r, c.p1, l.r, l.p0) + r(l.r, l.p1, l.a1 - l.a0) + u(l.r, l.p1, c.r, c.p0)) + "Z" } function t(n, t, e, r) { var u = t.call(n, e, r), i = a.call(n, u, r), o = c.call(n, u, r) + jc, s = l.call(n, u, r) + jc; return { r: i, a0: o, a1: s, p0: [i * Math.cos(o), i * Math.sin(o)], p1: [i * Math.cos(s), i * Math.sin(s)] } } function e(n, t) { return n.a0 == t.a0 && n.a1 == t.a1 } function r(n, t, e) { return "A" + n + "," + n + " 0 " + +(e > Bo) + ",1 " + t } function u(n, t, e, r) { return "Q 0,0 " + r } var i = Ce, o = De, a = yi, c = pi, l = di; return n.radius = function (t) { return arguments.length ? (a = gt(t), n) : a }, n.source = function (t) { return arguments.length ? (i = gt(t), n) : i }, n.target = function (t) { return arguments.length ? (o = gt(t), n) : o }, n.startAngle = function (t) { return arguments.length ? (c = gt(t), n) : c }, n.endAngle = function (t) { return arguments.length ? (l = gt(t), n) : l }, n }, vo.svg.diagonal = function () { function n(n, u) { var i = t.call(this, n, u), o = e.call(this, n, u), a = (i.y + o.y) / 2, c = [i, { x: i.x, y: a }, { x: o.x, y: a }, o]; return c = c.map(r), "M" + c[0] + "C" + c[1] + " " + c[2] + " " + c[3] } var t = Ce, e = De, r = Mi; return n.source = function (e) { return arguments.length ? (t = gt(e), n) : t }, n.target = function (t) { return arguments.length ? (e = gt(t), n) : e }, n.projection = function (t) { return arguments.length ? (r = t, n) : r }, n }, vo.svg.diagonal.radial = function () { var n = vo.svg.diagonal(), t = Mi, e = n.projection; return n.projection = function (n) { return arguments.length ? e(xi(t = n)) : t }, n }, vo.svg.symbol = function () { function n(n, r) { return (Hc.get(t.call(this, n, r)) || wi)(e.call(this, n, r)) } var t = _i, e = bi; return n.type = function (e) { return arguments.length ? (t = gt(e), n) : t }, n.size = function (t) { return arguments.length ? (e = gt(t), n) : e }, n }; var Hc = vo.map({ circle: wi, cross: function (n) { var t = Math.sqrt(n / 5) / 2; return "M" + -3 * t + "," + -t + "H" + -t + "V" + -3 * t + "H" + t + "V" + -t + "H" + 3 * t + "V" + t + "H" + t + "V" + 3 * t + "H" + -t + "V" + t + "H" + -3 * t + "Z" }, diamond: function (n) { var t = Math.sqrt(n / (2 * Rc)), e = t * Rc; return "M0," + -t + "L" + e + ",0" + " 0," + t + " " + -e + ",0" + "Z" }, square: function (n) { var t = Math.sqrt(n) / 2; return "M" + -t + "," + -t + "L" + t + "," + -t + " " + t + "," + t + " " + -t + "," + t + "Z" }, "triangle-down": function (n) { var t = Math.sqrt(n / Oc), e = t * Oc / 2; return "M0," + e + "L" + t + "," + -e + " " + -t + "," + -e + "Z" }, "triangle-up": function (n) { var t = Math.sqrt(n / Oc), e = t * Oc / 2; return "M0," + -e + "L" + t + "," + e + " " + -t + "," + e + "Z" } }); vo.svg.symbolTypes = Hc.keys(); var Fc, Pc, Oc = Math.sqrt(3), Rc = Math.tan(30 * Jo), Yc = [], Ic = 0; Yc.call = Oo.call, Yc.empty = Oo.empty, Yc.node = Oo.node, Yc.size = Oo.size, vo.transition = function (n) { return arguments.length ? Fc ? n.transition() : n : Io.transition() }, vo.transition.prototype = Yc, Oo.transition = function () { for (var n, t, e = Fc || ++Ic, r = [], u = Pc || { time: Date.now(), ease: zr, delay: 0, duration: 250 }, i = -1, o = this.length; ++i < o;) { r.push(n = []); for (var a = this[i], c = -1, l = a.length; ++c < l;)(t = a[c]) && Ni(t, c, e, u), n.push(t) } return Si(r, e) }, Oo.interrupt = function () { return this.each(Ei) }, Yc.select = function (n) { var t, e, r, u = this.id, i = []; n = d(n); for (var o = -1, a = this.length; ++o < a;) { i.push(t = []); for (var c = this[o], l = -1, s = c.length; ++l < s;)(r = c[l]) && (e = n.call(r, r.__data__, l, o)) ? ("__data__" in r && (e.__data__ = r.__data__), Ni(e, l, u, r.__transition__[u]), t.push(e)) : t.push(null) } return Si(i, u) }, Yc.selectAll = function (n) { var t, e, r, u, i, o = this.id, a = []; n = v(n); for (var c = -1, l = this.length; ++c < l;)for (var s = this[c], f = -1, h = s.length; ++f < h;)if (r = s[f]) { i = r.__transition__[o], e = n.call(r, r.__data__, f, c), a.push(t = []); for (var g = -1, p = e.length; ++g < p;)(u = e[g]) && Ni(u, g, o, i), t.push(u) } return Si(a, o) }, Yc.filter = function (n) { var t, e, r, u = []; "function" != typeof n && (n = k(n)); for (var i = 0, o = this.length; o > i; i++) { u.push(t = []); for (var e = this[i], a = 0, c = e.length; c > a; a++)(r = e[a]) && n.call(r, r.__data__, a) && t.push(r) } return Si(u, this.id) }, Yc.tween = function (n, t) { var e = this.id; return arguments.length < 2 ? this.node().__transition__[e].tween.get(n) : N(this, null == t ? function (t) { t.__transition__[e].tween.remove(n) } : function (r) { r.__transition__[e].tween.set(n, t) }) }, Yc.attr = function (n, t) { function e() { this.removeAttribute(a) } function r() { this.removeAttributeNS(a.space, a.local) } function u(n) { return null == n ? e : (n += "", function () { var t, e = this.getAttribute(a); return e !== n && (t = o(e, n), function (n) { this.setAttribute(a, t(n)) }) }) } function i(n) { return null == n ? r : (n += "", function () { var t, e = this.getAttributeNS(a.space, a.local); return e !== n && (t = o(e, n), function (n) { this.setAttributeNS(a.space, a.local, t(n)) }) }) } if (arguments.length < 2) { for (t in n) this.attr(t, n[t]); return this } var o = "transform" == n ? Br : Sr, a = vo.ns.qualify(n); return ki(this, "attr." + n, t, a.local ? i : u) }, Yc.attrTween = function (n, t) {
39
- function e(n, e) { var r = t.call(this, n, e, this.getAttribute(u)); return r && function (n) { this.setAttribute(u, r(n)) } } function r(n, e) { var r = t.call(this, n, e, this.getAttributeNS(u.space, u.local)); return r && function (n) { this.setAttributeNS(u.space, u.local, r(n)) } } var u = vo.ns.qualify(n);
40
- return this.tween("attr." + n, u.local ? r : e)
41
- }, Yc.style = function (n, t, e) { function r() { this.style.removeProperty(n) } function u(t) { return null == t ? r : (t += "", function () { var r, u = bo.getComputedStyle(this, null).getPropertyValue(n); return u !== t && (r = Sr(u, t), function (t) { this.style.setProperty(n, r(t), e) }) }) } var i = arguments.length; if (3 > i) { if ("string" != typeof n) { 2 > i && (t = ""); for (e in n) this.style(e, n[e], t); return this } e = "" } return ki(this, "style." + n, t, u) }, Yc.styleTween = function (n, t, e) { function r(r, u) { var i = t.call(this, r, u, bo.getComputedStyle(this, null).getPropertyValue(n)); return i && function (t) { this.style.setProperty(n, i(t), e) } } return arguments.length < 3 && (e = ""), this.tween("style." + n, r) }, Yc.text = function (n) { return ki(this, "text", n, Ai) }, Yc.remove = function () { return this.each("end.transition", function () { var n; this.__transition__.count < 2 && (n = this.parentNode) && n.removeChild(this) }) }, Yc.ease = function (n) { var t = this.id; return arguments.length < 1 ? this.node().__transition__[t].ease : ("function" != typeof n && (n = vo.ease.apply(vo, arguments)), N(this, function (e) { e.__transition__[t].ease = n })) }, Yc.delay = function (n) { var t = this.id; return N(this, "function" == typeof n ? function (e, r, u) { e.__transition__[t].delay = +n.call(e, e.__data__, r, u) } : (n = +n, function (e) { e.__transition__[t].delay = n })) }, Yc.duration = function (n) { var t = this.id; return N(this, "function" == typeof n ? function (e, r, u) { e.__transition__[t].duration = Math.max(1, n.call(e, e.__data__, r, u)) } : (n = Math.max(1, n), function (e) { e.__transition__[t].duration = n })) }, Yc.each = function (n, t) { var e = this.id; if (arguments.length < 2) { var r = Pc, u = Fc; Fc = e, N(this, function (t, r, u) { Pc = t.__transition__[e], n.call(t, t.__data__, r, u) }), Pc = r, Fc = u } else N(this, function (r) { var u = r.__transition__[e]; (u.event || (u.event = vo.dispatch("start", "end"))).on(n, t) }); return this }, Yc.transition = function () { for (var n, t, e, r, u = this.id, i = ++Ic, o = [], a = 0, c = this.length; c > a; a++) { o.push(n = []); for (var t = this[a], l = 0, s = t.length; s > l; l++)(e = t[l]) && (r = Object.create(e.__transition__[u]), r.delay += r.duration, Ni(e, l, i, r)), n.push(e) } return Si(o, i) }, vo.svg.axis = function () { function n(n) { n.each(function () { var n, l = vo.select(this), s = null == c ? e.ticks ? e.ticks.apply(e, a) : e.domain() : c, f = null == t ? e.tickFormat ? e.tickFormat.apply(e, a) : pt : t, h = l.selectAll(".tick").data(s, pt), g = h.enter().insert("g", ".domain").attr("class", "tick").style("opacity", 1e-6), p = vo.transition(h.exit()).style("opacity", 1e-6).remove(), d = vo.transition(h).style("opacity", 1), v = Bu(e), m = l.selectAll(".domain").data([0]), y = (m.enter().append("path").attr("class", "domain"), vo.transition(m)), M = e.copy(), x = this.__chart__ || M; this.__chart__ = M, g.append("line"), g.append("text"); var b = g.select("line"), _ = d.select("line"), w = h.select("text").text(f), S = g.select("text"), E = d.select("text"); switch (r) { case "bottom": n = qi, b.attr("y2", u), S.attr("y", Math.max(u, 0) + o), _.attr("x2", 0).attr("y2", u), E.attr("x", 0).attr("y", Math.max(u, 0) + o), w.attr("dy", ".71em").style("text-anchor", "middle"), y.attr("d", "M" + v[0] + "," + i + "V0H" + v[1] + "V" + i); break; case "top": n = qi, b.attr("y2", -u), S.attr("y", -(Math.max(u, 0) + o)), _.attr("x2", 0).attr("y2", -u), E.attr("x", 0).attr("y", -(Math.max(u, 0) + o)), w.attr("dy", "0em").style("text-anchor", "middle"), y.attr("d", "M" + v[0] + "," + -i + "V0H" + v[1] + "V" + -i); break; case "left": n = Ti, b.attr("x2", -u), S.attr("x", -(Math.max(u, 0) + o)), _.attr("x2", -u).attr("y2", 0), E.attr("x", -(Math.max(u, 0) + o)).attr("y", 0), w.attr("dy", ".32em").style("text-anchor", "end"), y.attr("d", "M" + -i + "," + v[0] + "H0V" + v[1] + "H" + -i); break; case "right": n = Ti, b.attr("x2", u), S.attr("x", Math.max(u, 0) + o), _.attr("x2", u).attr("y2", 0), E.attr("x", Math.max(u, 0) + o).attr("y", 0), w.attr("dy", ".32em").style("text-anchor", "start"), y.attr("d", "M" + i + "," + v[0] + "H0V" + v[1] + "H" + i) }if (e.rangeBand) { var k = M.rangeBand() / 2, A = function (n) { return M(n) + k }; g.call(n, A), d.call(n, A) } else g.call(n, x), d.call(n, M), p.call(n, M) }) } var t, e = vo.scale.linear(), r = Uc, u = 6, i = 6, o = 3, a = [10], c = null; return n.scale = function (t) { return arguments.length ? (e = t, n) : e }, n.orient = function (t) { return arguments.length ? (r = t in Vc ? t + "" : Uc, n) : r }, n.ticks = function () { return arguments.length ? (a = arguments, n) : a }, n.tickValues = function (t) { return arguments.length ? (c = t, n) : c }, n.tickFormat = function (e) { return arguments.length ? (t = e, n) : t }, n.tickSize = function (t) { var e = arguments.length; return e ? (u = +t, i = +arguments[e - 1], n) : u }, n.innerTickSize = function (t) { return arguments.length ? (u = +t, n) : u }, n.outerTickSize = function (t) { return arguments.length ? (i = +t, n) : i }, n.tickPadding = function (t) { return arguments.length ? (o = +t, n) : o }, n.tickSubdivide = function () { return arguments.length && n }, n }; var Uc = "bottom", Vc = { top: 1, right: 1, bottom: 1, left: 1 }; vo.svg.brush = function () { function n(i) { i.each(function () { var i = vo.select(this).style("pointer-events", "all").style("-webkit-tap-highlight-color", "rgba(0,0,0,0)").on("mousedown.brush", u).on("touchstart.brush", u), o = i.selectAll(".background").data([0]); o.enter().append("rect").attr("class", "background").style("visibility", "hidden").style("cursor", "crosshair"), i.selectAll(".extent").data([0]).enter().append("rect").attr("class", "extent").style("cursor", "move"); var a = i.selectAll(".resize").data(v, pt); a.exit().remove(), a.enter().append("g").attr("class", function (n) { return "resize " + n }).style("cursor", function (n) { return Zc[n] }).append("rect").attr("x", function (n) { return /[ew]$/.test(n) ? -3 : null }).attr("y", function (n) { return /^[ns]/.test(n) ? -3 : null }).attr("width", 6).attr("height", 6).style("visibility", "hidden"), a.style("display", n.empty() ? "none" : null); var s, f = vo.transition(i), h = vo.transition(o); c && (s = Bu(c), h.attr("x", s[0]).attr("width", s[1] - s[0]), e(f)), l && (s = Bu(l), h.attr("y", s[0]).attr("height", s[1] - s[0]), r(f)), t(f) }) } function t(n) { n.selectAll(".resize").attr("transform", function (n) { return "translate(" + s[+/e$/.test(n)] + "," + h[+/^s/.test(n)] + ")" }) } function e(n) { n.select(".extent").attr("x", s[0]), n.selectAll(".extent,.n>rect,.s>rect").attr("width", s[1] - s[0]) } function r(n) { n.select(".extent").attr("y", h[0]), n.selectAll(".extent,.e>rect,.w>rect").attr("height", h[1] - h[0]) } function u() { function u() { var n = vo.event.changedTouches; return n ? vo.touches(_, n)[0] : vo.mouse(_) } function g() { 32 == vo.event.keyCode && (q || (x = null, z[0] -= s[1], z[1] -= h[1], q = 2), f()) } function v() { 32 == vo.event.keyCode && 2 == q && (z[0] += s[1], z[1] += h[1], q = 0, f()) } function m() { var n = u(), i = !1; b && (n[0] += b[0], n[1] += b[1]), q || (vo.event.altKey ? (x || (x = [(s[0] + s[1]) / 2, (h[0] + h[1]) / 2]), z[0] = s[+(n[0] < x[0])], z[1] = h[+(n[1] < x[1])]) : x = null), A && y(n, c, 0) && (e(E), i = !0), N && y(n, l, 1) && (r(E), i = !0), i && (t(E), S({ type: "brush", mode: q ? "move" : "resize" })) } function y(n, t, e) { var r, u, a = Bu(t), c = a[0], l = a[1], f = z[e], g = e ? h : s, v = g[1] - g[0]; return q && (c -= f, l -= v + f), r = (e ? d : p) ? Math.max(c, Math.min(l, n[e])) : n[e], q ? u = (r += f) + v : (x && (f = Math.max(c, Math.min(l, 2 * x[e] - r))), r > f ? (u = r, r = f) : u = f), g[0] != r || g[1] != u ? (e ? o = null : i = null, g[0] = r, g[1] = u, !0) : void 0 } function M() { m(), E.style("pointer-events", "all").selectAll(".resize").style("display", n.empty() ? "none" : null), vo.select("body").style("cursor", null), C.on("mousemove.brush", null).on("mouseup.brush", null).on("touchmove.brush", null).on("touchend.brush", null).on("keydown.brush", null).on("keyup.brush", null), T(), S({ type: "brushend" }) } var x, b, _ = this, w = vo.select(vo.event.target), S = a.of(_, arguments), E = vo.select(_), k = w.datum(), A = !/^(n|s)$/.test(k) && c, N = !/^(e|w)$/.test(k) && l, q = w.classed("extent"), T = j(), z = u(), C = vo.select(bo).on("keydown.brush", g).on("keyup.brush", v); if (vo.event.changedTouches ? C.on("touchmove.brush", m).on("touchend.brush", M) : C.on("mousemove.brush", m).on("mouseup.brush", M), E.interrupt().selectAll("*").interrupt(), q) z[0] = s[0] - z[0], z[1] = h[0] - z[1]; else if (k) { var D = +/w$/.test(k), L = +/^n/.test(k); b = [s[1 - D] - z[0], h[1 - L] - z[1]], z[0] = s[D], z[1] = h[L] } else vo.event.altKey && (x = z.slice()); E.style("pointer-events", "none").selectAll(".resize").style("display", null), vo.select("body").style("cursor", w.style("cursor")), S({ type: "brushstart" }), m() } var i, o, a = g(n, "brushstart", "brush", "brushend"), c = null, l = null, s = [0, 0], h = [0, 0], p = !0, d = !0, v = Xc[0]; return n.event = function (n) { n.each(function () { var n = a.of(this, arguments), t = { x: s, y: h, i: i, j: o }, e = this.__chart__ || t; this.__chart__ = t, Fc ? vo.select(this).transition().each("start.brush", function () { i = e.i, o = e.j, s = e.x, h = e.y, n({ type: "brushstart" }) }).tween("brush:brush", function () { var e = Er(s, t.x), r = Er(h, t.y); return i = o = null, function (u) { s = t.x = e(u), h = t.y = r(u), n({ type: "brush", mode: "resize" }) } }).each("end.brush", function () { i = t.i, o = t.j, n({ type: "brush", mode: "resize" }), n({ type: "brushend" }) }) : (n({ type: "brushstart" }), n({ type: "brush", mode: "resize" }), n({ type: "brushend" })) }) }, n.x = function (t) { return arguments.length ? (c = t, v = Xc[!c << 1 | !l], n) : c }, n.y = function (t) { return arguments.length ? (l = t, v = Xc[!c << 1 | !l], n) : l }, n.clamp = function (t) { return arguments.length ? (c && l ? (p = !!t[0], d = !!t[1]) : c ? p = !!t : l && (d = !!t), n) : c && l ? [p, d] : c ? p : l ? d : null }, n.extent = function (t) { var e, r, u, a, f; return arguments.length ? (c && (e = t[0], r = t[1], l && (e = e[0], r = r[0]), i = [e, r], c.invert && (e = c(e), r = c(r)), e > r && (f = e, e = r, r = f), (e != s[0] || r != s[1]) && (s = [e, r])), l && (u = t[0], a = t[1], c && (u = u[1], a = a[1]), o = [u, a], l.invert && (u = l(u), a = l(a)), u > a && (f = u, u = a, a = f), (u != h[0] || a != h[1]) && (h = [u, a])), n) : (c && (i ? (e = i[0], r = i[1]) : (e = s[0], r = s[1], c.invert && (e = c.invert(e), r = c.invert(r)), e > r && (f = e, e = r, r = f))), l && (o ? (u = o[0], a = o[1]) : (u = h[0], a = h[1], l.invert && (u = l.invert(u), a = l.invert(a)), u > a && (f = u, u = a, a = f))), c && l ? [[e, u], [r, a]] : c ? [e, r] : l && [u, a]) }, n.clear = function () { return n.empty() || (s = [0, 0], h = [0, 0], i = o = null), n }, n.empty = function () { return !!c && s[0] == s[1] || !!l && h[0] == h[1] }, vo.rebind(n, a, "on") }; var Zc = { n: "ns-resize", e: "ew-resize", s: "ns-resize", w: "ew-resize", nw: "nwse-resize", ne: "nesw-resize", se: "nwse-resize", sw: "nesw-resize" }, Xc = [["n", "e", "s", "w", "nw", "ne", "se", "sw"], ["e", "w"], ["n", "s"], []], Bc = vo.time = {}, $c = Date, Wc = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; zi.prototype = { getDate: function () { return this._.getUTCDate() }, getDay: function () { return this._.getUTCDay() }, getFullYear: function () { return this._.getUTCFullYear() }, getHours: function () { return this._.getUTCHours() }, getMilliseconds: function () { return this._.getUTCMilliseconds() }, getMinutes: function () { return this._.getUTCMinutes() }, getMonth: function () { return this._.getUTCMonth() }, getSeconds: function () { return this._.getUTCSeconds() }, getTime: function () { return this._.getTime() }, getTimezoneOffset: function () { return 0 }, valueOf: function () { return this._.valueOf() }, setDate: function () { Jc.setUTCDate.apply(this._, arguments) }, setDay: function () { Jc.setUTCDay.apply(this._, arguments) }, setFullYear: function () { Jc.setUTCFullYear.apply(this._, arguments) }, setHours: function () { Jc.setUTCHours.apply(this._, arguments) }, setMilliseconds: function () { Jc.setUTCMilliseconds.apply(this._, arguments) }, setMinutes: function () { Jc.setUTCMinutes.apply(this._, arguments) }, setMonth: function () { Jc.setUTCMonth.apply(this._, arguments) }, setSeconds: function () { Jc.setUTCSeconds.apply(this._, arguments) }, setTime: function () { Jc.setTime.apply(this._, arguments) } }; var Jc = Date.prototype, Gc = "%a %b %e %X %Y", Kc = "%m/%d/%Y", Qc = "%H:%M:%S", nl = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], tl = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], el = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], rl = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; Bc.year = Ci(function (n) { return n = Bc.day(n), n.setMonth(0, 1), n }, function (n, t) { n.setFullYear(n.getFullYear() + t) }, function (n) { return n.getFullYear() }), Bc.years = Bc.year.range, Bc.years.utc = Bc.year.utc.range, Bc.day = Ci(function (n) { var t = new $c(2e3, 0); return t.setFullYear(n.getFullYear(), n.getMonth(), n.getDate()), t }, function (n, t) { n.setDate(n.getDate() + t) }, function (n) { return n.getDate() - 1 }), Bc.days = Bc.day.range, Bc.days.utc = Bc.day.utc.range, Bc.dayOfYear = function (n) { var t = Bc.year(n); return Math.floor((n - t - 6e4 * (n.getTimezoneOffset() - t.getTimezoneOffset())) / 864e5) }, Wc.forEach(function (n, t) { n = n.toLowerCase(), t = 7 - t; var e = Bc[n] = Ci(function (n) { return (n = Bc.day(n)).setDate(n.getDate() - (n.getDay() + t) % 7), n }, function (n, t) { n.setDate(n.getDate() + 7 * Math.floor(t)) }, function (n) { var e = Bc.year(n).getDay(); return Math.floor((Bc.dayOfYear(n) + (e + t) % 7) / 7) - (e !== t) }); Bc[n + "s"] = e.range, Bc[n + "s"].utc = e.utc.range, Bc[n + "OfYear"] = function (n) { var e = Bc.year(n).getDay(); return Math.floor((Bc.dayOfYear(n) + (e + t) % 7) / 7) } }), Bc.week = Bc.sunday, Bc.weeks = Bc.sunday.range, Bc.weeks.utc = Bc.sunday.utc.range, Bc.weekOfYear = Bc.sundayOfYear, Bc.format = ji; var ul = Hi(nl), il = Fi(nl), ol = Hi(tl), al = Fi(tl), cl = Hi(el), ll = Fi(el), sl = Hi(rl), fl = Fi(rl), hl = /^%/, gl = { "-": "", _: " ", 0: "0" }, pl = { a: function (n) { return tl[n.getDay()] }, A: function (n) { return nl[n.getDay()] }, b: function (n) { return rl[n.getMonth()] }, B: function (n) { return el[n.getMonth()] }, c: ji(Gc), d: function (n, t) { return Pi(n.getDate(), t, 2) }, e: function (n, t) { return Pi(n.getDate(), t, 2) }, H: function (n, t) { return Pi(n.getHours(), t, 2) }, I: function (n, t) { return Pi(n.getHours() % 12 || 12, t, 2) }, j: function (n, t) { return Pi(1 + Bc.dayOfYear(n), t, 3) }, L: function (n, t) { return Pi(n.getMilliseconds(), t, 3) }, m: function (n, t) { return Pi(n.getMonth() + 1, t, 2) }, M: function (n, t) { return Pi(n.getMinutes(), t, 2) }, p: function (n) { return n.getHours() >= 12 ? "PM" : "AM" }, S: function (n, t) { return Pi(n.getSeconds(), t, 2) }, U: function (n, t) { return Pi(Bc.sundayOfYear(n), t, 2) }, w: function (n) { return n.getDay() }, W: function (n, t) { return Pi(Bc.mondayOfYear(n), t, 2) }, x: ji(Kc), X: ji(Qc), y: function (n, t) { return Pi(n.getFullYear() % 100, t, 2) }, Y: function (n, t) { return Pi(n.getFullYear() % 1e4, t, 4) }, Z: oo, "%": function () { return "%" } }, dl = { a: Oi, A: Ri, b: Vi, B: Zi, c: Xi, d: Qi, e: Qi, H: to, I: to, j: no, L: uo, m: Ki, M: eo, p: io, S: ro, U: Ii, w: Yi, W: Ui, x: Bi, X: $i, y: Ji, Y: Wi, "%": ao }, vl = /^\s*\d+/, ml = vo.map({ am: 0, pm: 1 }); ji.utc = co; var yl = co("%Y-%m-%dT%H:%M:%S.%LZ"); ji.iso = Date.prototype.toISOString && +new Date("2000-01-01T00:00:00.000Z") ? lo : yl, lo.parse = function (n) { var t = new Date(n); return isNaN(t) ? null : t }, lo.toString = yl.toString, Bc.second = Ci(function (n) { return new $c(1e3 * Math.floor(n / 1e3)) }, function (n, t) { n.setTime(n.getTime() + 1e3 * Math.floor(t)) }, function (n) { return n.getSeconds() }), Bc.seconds = Bc.second.range, Bc.seconds.utc = Bc.second.utc.range, Bc.minute = Ci(function (n) { return new $c(6e4 * Math.floor(n / 6e4)) }, function (n, t) { n.setTime(n.getTime() + 6e4 * Math.floor(t)) }, function (n) { return n.getMinutes() }), Bc.minutes = Bc.minute.range, Bc.minutes.utc = Bc.minute.utc.range, Bc.hour = Ci(function (n) { var t = n.getTimezoneOffset() / 60; return new $c(36e5 * (Math.floor(n / 36e5 - t) + t)) }, function (n, t) { n.setTime(n.getTime() + 36e5 * Math.floor(t)) }, function (n) { return n.getHours() }), Bc.hours = Bc.hour.range, Bc.hours.utc = Bc.hour.utc.range, Bc.month = Ci(function (n) { return n = Bc.day(n), n.setDate(1), n }, function (n, t) { n.setMonth(n.getMonth() + t) }, function (n) { return n.getMonth() }), Bc.months = Bc.month.range, Bc.months.utc = Bc.month.utc.range; var Ml = [1e3, 5e3, 15e3, 3e4, 6e4, 3e5, 9e5, 18e5, 36e5, 108e5, 216e5, 432e5, 864e5, 1728e5, 6048e5, 2592e6, 7776e6, 31536e6], xl = [[Bc.second, 1], [Bc.second, 5], [Bc.second, 15], [Bc.second, 30], [Bc.minute, 1], [Bc.minute, 5], [Bc.minute, 15], [Bc.minute, 30], [Bc.hour, 1], [Bc.hour, 3], [Bc.hour, 6], [Bc.hour, 12], [Bc.day, 1], [Bc.day, 2], [Bc.week, 1], [Bc.month, 1], [Bc.month, 3], [Bc.year, 1]], bl = [[ji("%Y"), Vt], [ji("%B"), function (n) { return n.getMonth() }], [ji("%b %d"), function (n) { return 1 != n.getDate() }], [ji("%a %d"), function (n) { return n.getDay() && 1 != n.getDate() }], [ji("%I %p"), function (n) { return n.getHours() }], [ji("%I:%M"), function (n) { return n.getMinutes() }], [ji(":%S"), function (n) { return n.getSeconds() }], [ji(".%L"), function (n) { return n.getMilliseconds() }]], _l = ho(bl); xl.year = Bc.year, Bc.scale = function () { return so(vo.scale.linear(), xl, _l) }; var wl = { range: function (n, t, e) { return vo.range(+n, +t, e).map(fo) } }, Sl = xl.map(function (n) { return [n[0].utc, n[1]] }), El = [[co("%Y"), Vt], [co("%B"), function (n) { return n.getUTCMonth() }], [co("%b %d"), function (n) { return 1 != n.getUTCDate() }], [co("%a %d"), function (n) { return n.getUTCDay() && 1 != n.getUTCDate() }], [co("%I %p"), function (n) { return n.getUTCHours() }], [co("%I:%M"), function (n) { return n.getUTCMinutes() }], [co(":%S"), function (n) { return n.getUTCSeconds() }], [co(".%L"), function (n) { return n.getUTCMilliseconds() }]], kl = ho(El); return Sl.year = Bc.year.utc, Bc.scale.utc = function () { return so(vo.scale.linear(), Sl, kl) }, vo.text = dt(function (n) { return n.responseText }), vo.json = function (n, t) { return vt(n, "application/json", go, t) }, vo.html = function (n, t) { return vt(n, "text/html", po, t) }, vo.xml = dt(function (n) { return n.responseXML }), vo
42
- }();
43
- // plots.min.js
44
- var GV; GV || (GV = {}), function () { "use strict"; GV.toggleAllPlots = function (t) { if (window.chrome && "file:" === window.location.protocol) $("#browseralert").modal(); else { var a = $(".plot_btn"); a.length > 30 ? $("#alert").modal() : ($("#spinner1").modal({ backdrop: "static", keyboard: "false" }), "pressed" !== t.status ? (t.status = "pressed", $("#show_all_plots").html("Hide All Charts"), GV.showAllPlots()) : (t.status = "released", $("#show_all_plots").html("Show All Charts"), GV.removeAllPlots()), $("#spinner1").modal("hide")) } }, GV.showAllPlots = function () { $(".plot_btn").each(function () { "pressed" !== this.status && GV.addData(this, "all") }) }, GV.removeAllPlots = function () { $(".tablesorter-childRow").each(function () { $(this).remove() }), $(".plot_btn").each(function () { this.status = "released" }) }, GV.addData = function (t, a) { if (window.chrome && "file:" === window.location.protocol) $("#browseralert").modal(); else { var e = $(t).closest("tr"), r = e.attr("data-target"), n = $("#mainrow" + r); n.length && "pressed" !== t.status ? (GV.emptyChildRow(e, r, t), GV.addDataToChildRow(e, r, a)) : 0 === n.length ? (GV.createChildRow(e, r, t), GV.addDataToChildRow(e, r, a)) : n.length && GV.removeChildRow(e, n, t), $("table").trigger("update") } }, GV.toggleOverviewBtn = function () { if (window.chrome && "file:" === window.location.protocol) $("#overview").remove(); else { var t = $("#overview_btn").data('overviewjson'); $.getJSON(t, function (t) { var a = $("<span>" + t.less + "</span><br>"), e = $("<span>" + t.evaluation + "</span><br>"); $("#overview_btn").hasClass("active") ? ($("#overview_text").html(e), $("#overview_btn").text("Show Less"), GV.addPlot(t.data, "overview", t.type, t.title, t.footer, t.xtitle, t.ytitle)) : ($("#overview").find("svg").remove(), $("#overview_text").html(a), $("#overview_btn").text("Show More")) }) } }, GV.createChildRow = function (t, a, e) { var r = '<tr class="tablesorter-childRow" id="mainrow' + a + '"><td colspan="12" id="row' + a + '"><div id="' + a + '" class="expanded-child"></div></td></tr>'; t.addClass("tablesorter-hasChildRow"), t.after(r), e.status = "pressed" }, GV.removeChildRow = function (t, a, e) { t.removeClass("tablesorter-hasChildRow"), a.remove(), e.status = "released" }, GV.emptyChildRow = function (t, a, e) { var r = "#" + a, n = "#" + a + "explanation"; $(r).empty(), $(n).remove(), GV.resetStatusOfOtherButtons(t), e.status = "pressed" }, GV.resetStatusOfOtherButtons = function (t) { t.find("td").each(function () { "pressed" == this.status && (this.status = "released") }), t.find(".plot_btn").each(function () { "pressed" == this.status && (this.status = "released") }) }, GV.addDataToChildRow = function (t, a, e) { var r = t.attr("data-jsonFile"); $.getJSON(r, function (t) { if ("all" === e) for (var r in t.validations) void 0 !== t.validations[r].graphs && GV.generatePlotCommands(t.validations[r].graphs, a); else GV.addExplanation(a, t.validations[e]), void 0 !== t.validations[e].graphs && GV.generatePlotCommands(t.validations[e].graphs, a) }) }, GV.generatePlotCommands = function (t, a) { for (var e = 0; e < t.length; e++) { var r = t[e]; GV.addPlot(r.data, a, r.type, r.title, r.footer, r.xtitle, r.ytitle, r.aux1, r.aux2) } }, GV.addExplanation = function (t, a) { var e = "#row" + t, r = "<p><b>Approach:</b> " + a.approach + "</p>", n = "<p><b>Explanation:</b> " + a.explanation + "</p>", o = "<p><b>Conclusion:</b> " + a.conclusion + "</p>", l = $('<div id="' + t + 'explanation" class="alert alert-info explanation_alert" role="alert">' + r + n + o + "</div>"); $(e).prepend(l) }, GV.addPlot = function (t, a, e, r, n, o, l, s, i) { var c; switch (c = "" === n ? [] : n.split(";"), e) { case "scatter": GV.plot_scatter(t, a, r, n, o, l, s, i); break; case "bars": GV.plot_bars(t, a, r, c, o, l, s); break; case "simplebars": GV.plot_simple_bars(t, a, r, c, o, l); break; case "lines": null !== i && (i = i.split(",")), GV.plot_lines(t, a, r, c, o, l, s, i); break; case "align": null !== i && (i = i.split(",")), GV.plot_align(t, a, r, c, o, l, s, i) } }, GV.color_beautification = function (t) { switch (t) { case "red": return d3.rgb(189, 54, 47); case "blue": return d3.rgb(58, 135, 173); case "green": return d3.rgb(70, 136, 71); case "yellow": return d3.rgb(255, 255, 51); case "orange": return d3.rgb(248, 148, 6); case "violet": return d3.rgb(153, 0, 153); case "gray": return d3.rgb(160, 160, 160); default: return t } }, GV.plot_bars = function (t, a, e, r, n, o, l) { var s = { top: 70, right: 50, bottom: 75, left: 50 }, i = 600 - s.left - s.right, c = 500 - s.top - s.bottom, d = d3.select("#".concat(a)).append("svg").attr("width", i + s.left + s.right).attr("height", c + s.top + s.bottom).append("g").attr("transform", "translate(" + s.left + "," + s.top + ")"); d.append("text").attr("x", i / 2).attr("y", -45).attr("text-anchor", "middle").style("font-size", "16px").text(e); var p = 100, u = [].concat.apply([], t), f = d3.max(u, function (t) { return t.value }) + 3, h = d3.scale.linear().domain([0, f + f / 10]).range([c, 0]), x = d3.min(u, function (t) { return t.key }); void 0 !== l && (x = Math.min(x, l)); var g = d3.max(u, function (t) { return t.key }); void 0 !== l && (g = Math.max(g, l)); var m = d3.scale.linear().domain([x - p, g + p]).range([13, i]), v = d3.svg.axis().scale(m).orient("bottom").ticks(8), y = d3.svg.axis().scale(h).orient("left").tickFormat(d3.format("d")).ticks(8); d.append("g").attr("class", "x axis").attr("transform", "translate(0," + c + ")").call(v).append("text").attr("class", "label").attr("x", (i - n.length) / 2 - 50).attr("y", 35).style("text-anchor", "start").text(n), d.append("g").attr("class", "y axis").call(y).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(c + o.length) / 2 - 50).attr("y", -40).style("text-anchor", "start").text(o), t.map(function (t) { d.selectAll(".bar").data(t).enter().append("rect").attr("x", function (t) { return m(t.key) }).attr("width", 6).attr("y", function (t) { return h(t.value) }).attr("height", function (t) { return c - h(t.value) }).attr("fill", function (t) { return t.main === !0 ? GV.color_beautification("red") : GV.color_beautification("blue") }) }), void 0 !== l && (d.append("rect").attr("x", m(l)).attr("width", 4).attr("y", h(f + f / 10)).style("opacity", .6).attr("height", c - h(f + f / 8)).attr("fill", GV.color_beautification("black")), d.append("text").attr("transform", "rotate(-90)").attr("x", -f / 10 - 35).attr("y", m(l) - 5).text("query")); for (var b = 0, w = 0, G = 0; G < r.length; G++) { var V = r[G].split(","); w = w + 8 * V[0].length + 15 } for (var k = 0; k < r.length; k++) { var _ = r[k].split(","); d.append("rect").attr("x", (i - w) / 2 + b).attr("y", -30).attr("width", 10).attr("height", 10).style("fill", GV.color_beautification(_[1].replace(/\s+/g, ""))), d.append("text").attr("x", (i - w) / 2 + b + 15).attr("y", -20).text(_[0]), b = b + 8 * _[0].length + 15 } }, GV.plot_simple_bars = function (t, a, e, r, n, o) { var l = { top: 70, right: 50, bottom: 75, left: 50 }, s = 600 - l.left - l.right, i = 500 - l.top - l.bottom, c = d3.select("#".concat(a)).append("svg").attr("width", s + l.left + l.right).attr("height", i + l.top + l.bottom).append("g").attr("transform", "translate(" + l.left + "," + l.top + ")"); c.append("text").attr("x", s / 2).attr("y", -45).attr("text-anchor", "middle").style("font-size", "16px").text(e); var d = 0, p = [].concat.apply([], t), u = d3.max(p, function (t) { return t.value }) + 3, f = d3.scale.linear().domain([0, u]).range([i, 0]), h = d3.min(p, function (t) { return t.key }), x = d3.max(p, function (t) { return t.key }), g = d3.scale.linear().domain([h - d, x + d]).range([13, s]), m = d3.svg.axis().scale(g).orient("bottom").ticks(8), v = d3.svg.axis().scale(f).orient("left").tickFormat(d3.format("d")).ticks(8); c.append("g").attr("class", "x axis").attr("transform", "translate(0," + i + ")").call(m).append("text").attr("class", "label").attr("x", (s - n.length) / 2 - 50).attr("y", 35).style("text-anchor", "start").text(n), c.append("g").attr("class", "y axis").call(v).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(i + o.length) / 2 - 50).attr("y", -40).style("text-anchor", "start").text(o), t.map(function (t) { c.selectAll(".bar").data(t).enter().append("rect").attr("x", function (t) { return g(t.key) }).attr("width", 6).attr("y", function (t) { return f(t.value) }).attr("height", function (t) { return i - f(t.value) }).attr("fill", function (t) { return t.main === !0 ? GV.color_beautification("red") : GV.color_beautification("blue") }) }) }, GV.plot_scatter = function (t, a, e, r, n, o, l, s) { var i = { top: 50, right: 30, bottom: 75, left: 50 }, c = 500 - i.left - i.right, d = 500 - i.top - i.bottom, p = d3.scale.linear().range([0, c]), u = d3.scale.linear().range([d, 0]), f = (d3.scale.category10(), d3.svg.axis().scale(p).orient("bottom").ticks(8)), h = d3.svg.axis().scale(u).orient("left").tickFormat(d3.format("d")).ticks(8), x = d3.select("#".concat(a)).append("svg").attr("width", c + i.left + i.right).attr("height", d + i.top + i.bottom).append("g").attr("transform", "translate(" + i.left + "," + i.top + ")"); x.append("text").attr("x", c / 2).attr("y", -25).attr("text-anchor", "middle").style("font-size", "16px").text(e), x.append("text").attr("x", c / 2).attr("y", d + 55).attr("text-anchor", "middle").style("font-size", "12px").text(r); var g = d3.max(t, function (t) { return t.x }), m = d3.min(t, function (t) { return t.x }), v = d3.max(t, function (t) { return t.y }), y = d3.min(t, function (t) { return t.y }); if (p.domain(d3.extent(t, function (t) { return t.x })).nice(), u.domain(d3.extent(t, function (t) { return t.y })).nice(), x.append("g").attr("class", "x axis").attr("transform", "translate(0," + d + ")").call(f).append("text").attr("class", "label").attr("x", (c - n.length) / 2 - 50).attr("y", 35).style("text-anchor", "start").text(n), x.append("g").attr("class", "y axis").call(h).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(d + o.length) / 2 - 50).attr("y", -40).style("text-anchor", "start").text(o), x.selectAll(".dot").data(t).enter().append("circle").attr("r", 2).attr("cx", function (t) { return p(t.x) }).attr("cy", function (t) { return u(t.y) }).style("fill", function () { return GV.color_beautification("red") }).style("opacity", .6), void 0 !== s && "" !== s && void 0 !== l && "" !== l) { l = parseFloat(l.replace(",", ".")); var b = g, w = l + s * g; w > v && (b = (v - l) / s, w = v), y > w && (b = (y - l) / s, w = y); var G = m, V = l + s * m; V > v && (G = (v - l) / s, V = y), y > V && (G = (y - l) / s, V = y), x.append("line").attr("x1", p(G)).attr("y1", u(V)).attr("x2", p(b)).attr("y2", u(w)).attr("stroke-width", 2).attr("stroke", "black") } }, GV.plot_lines = function (t, a, e, r, n, o, l, s) { var i = { top: 70, right: 50, bottom: 75, left: 50 }, c = 600 - i.left - i.right, d = 500 - i.top - i.bottom, p = d3.scale.linear().range([0, c]), u = d3.scale.linear().range([d, 0]), f = (d3.scale.category10(), ""); f = "Open Reading Frames in all 6 Frames" === e ? d3.svg.axis().scale(p).orient("bottom").ticks(0) : d3.svg.axis().scale(p).orient("bottom").ticks(5); var h = d3.svg.axis().scale(u).orient("left").ticks(5), x = d3.select("#".concat(a)).append("svg").attr("width", c + i.left + i.right).attr("height", d + i.top + i.bottom).append("g").attr("transform", "translate(" + i.left + "," + i.top + ")"); x.append("text").attr("x", c / 2).attr("y", -35).attr("text-anchor", "middle").style("font-size", "16px").text(e); var g = -1; p.domain([0, d3.max(t, function (t) { return t.stop })]), u.domain(d3.extent(t, function (t) { return t.y })).nice(), x.append("g").attr("class", "x axis").attr("transform", "translate(0," + (d + d / l) + ")").call(f).append("text").attr("class", "label").attr("x", (c - n.length) / 2 - 50).attr("y", 35).style("text-anchor", "start").text(n), null !== s ? x.append("g").attr("class", "y axis").call(h.ticks(s.length).tickFormat(function () { return g += 1, s[g] })).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(d + o.length) / 2 - 50).attr("y", -40).style("text-anchor", "start").text(o) : x.append("g").attr("class", "y axis").call(h).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(d + o.length) / 2).attr("y", -40).style("text-anchor", "start").text(o), x.selectAll(".dot").data(t).enter().append("line").attr("x1", function (t) { return p(t.start) }).attr("y1", function (t) { return u(t.y) }).attr("x2", function (t) { return p(t.stop) }).attr("x2", function (t) { return p(t.stop) }).attr("y2", function (t) { return u(t.y) }).attr("stroke-width", function (t) { return void 0 === t.dotted ? "red" == t.color ? d / l / 2.5 : d / l : d / l / 5 }).style("stroke-dasharray", function (t) { return void 0 === t.dotted ? "0, 0" : "2, 6" }).attr("stroke", function (t) { return GV.color_beautification(t.color) }); for (var m = (x.append("g").attr("class", "legend").attr("height", 100).attr("width", 100).attr("transform", "translate(-20,50)"), 40), v = 0, y = 0; y < r.length; y++) { var b = r[y].split(","); v = v + 8 * b[0].length + 15 } for (var w = 0; w < r.length; w++) { var G = r[w].split(","); x.append("rect").attr("x", (c - v) / 2 + m).attr("y", -30).attr("width", 10).attr("height", 10).style("fill", GV.color_beautification(G[1].replace(/\s+/g, ""))), x.append("text").attr("x", (c - v) / 2 + m + 15).attr("y", -20).text(G[0]), m = m + 8 * G[0].length + 15 } }, GV.plot_align = function (t, a, e, r, n, o, l, s) { var i = { top: 75, right: 50, bottom: 75, left: 150 }, c = 600 - i.left - i.right, d = 300 - i.top - i.bottom, p = d3.scale.linear().range([0, c]), u = d3.scale.linear().range([d, 0]), f = (d3.scale.category10(), d3.svg.axis().scale(p).orient("bottom").ticks(5)), h = d3.svg.axis().scale(u).orient("left").ticks(5), x = d3.select("#".concat(a)).append("svg").style("vertical-align", "top").attr("width", c + i.left + i.right).attr("height", d + i.top + i.bottom).append("g").attr("transform", "translate(" + i.left + "," + i.top + ")"); x.append("text").attr("x", c / 2).attr("y", -35).attr("text-anchor", "middle").style("font-size", "16px").text(e); var g = -1; p.domain([0, d3.max(t, function (t) { return t.stop })]), u.domain(d3.extent(t, function (t) { return t.y })).nice(), x.append("g").attr("class", "x axis").attr("transform", "translate(0," + (d + d / l) + ")").call(f).append("text").attr("class", "label").attr("x", (c - n.length) / 2 - 50).attr("y", 35).style("text-anchor", "start").text(n), null !== s ? x.append("g").attr("class", "y axis").call(h.ticks(s.length).tickFormat(function () { return g += 1, s[g] })).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(d + o.length) / 2 - 50).attr("y", -40).style("text-anchor", "start").text(o) : x.append("g").attr("class", "y axis").call(h).append("text").attr("class", "label").attr("transform", "rotate(-90)").attr("x", -(d + o.length) / 2 - 50).attr("y", -40).style("text-anchor", "start").text(o), x.selectAll(".dot").data(t).enter().append("line").attr("x1", function (t) { return p(t.start) }).attr("y1", function (t) { return u(t.y) }).attr("x2", function (t) { return p(t.stop) }).attr("y2", function (t) { return u(t.y) }).attr("stroke-width", function (t) { return -1 == t.height ? d / l : d / l * t.height }).attr("stroke", function (t) { return GV.color_beautification(t.color) }); for (var m = 0, v = 0, y = 0; y < r.length; y++) { var b = r[y].split(","); v = v + 8 * b[0].length + 15 } for (var w = 0; w < r.length; w++) { var G = r[w].split(","); x.append("rect").attr("x", (c - v) / 2 + m).attr("y", -30).attr("width", 10).attr("height", 10).style("fill", GV.color_beautification(G[1].replace(/\s+/g, ""))), x.append("text").attr("x", (c - v) / 2 + m + 15).attr("y", -20).text(G[0]), m = m + 8 * G[0].length + 15 } } }();
45
- // genevalidator.min.js
46
- $(document).ready(function () { "use strict"; checkCollapseState(), keepFooterFixedToBottom(), addSeqValidation(), inputValidation(), bindTdClicks(), $(document).bind("keydown", function (G) { G.ctrlKey && 13 === G.keyCode && $("#input").trigger("submit") }) }); var checkCollapseState = function () { "use strict"; if ($.cookie("GeneValidator_adv_params_status")) { var G = $.cookie("GeneValidator_adv_params_status"); if ("open" === G) { var T = document.getElementById("adv_params_btn"); T.innerHTML = '<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Hide Advanced Parameters', $("#adv_params").addClass("in") } } }, keepFooterFixedToBottom = function () { "use strict"; $("#mainbody").css({ "margin-bottom": $("#footer").height() + 15 + "px" }), $(window).resize(function () { $("#mainbody").css({ "margin-bottom": $("#footer").height() + 15 + "px" }) }) }, addSeqValidation = function () { "use strict"; jQuery.validator.addMethod("checkInputType", function (G, T) { var A = [], e = ""; if (">" === G.charAt(0)) { for (var C = G.split(">"), t = 1; t < C.length; t++) { var a = C[t].split("\n"); if (0 !== a.length) { var n = jQuery.grep(a, function (G) { return G }); if (0 !== n.length) { n.shift(); var r = n.join(""); if (e = checkType(r, .9), A.push(e), "protein" !== e && "dna" !== e && "rna" !== e) return !1 } } } for (var s = A[0], V = 0; V < A.length; V++)if (A[V] !== s) return !1; return !0 } return e = checkType(G, .9), "protein" !== e && "dna" !== e && "rna" !== e ? !1 : !0 }, "* The Input must be either DNA or protein sequence(s). Please ensure that your sequences do not contains any non-letter character(s). If there are multiple sequences, ensure that they are all of one type. ") }, inputValidation = function () { "use strict"; var G = $("#seq").attr("data-maxCharacters"); $("#input").validate({ rules: { seq: { minlength: 5, required: !0, checkInputType: !0, maxlength: G }, "validations[]": { required: !0 } }, highlight: function (G) { $(G).closest(".form-group").addClass("has-error") }, unhighlight: function (G) { $(G).closest(".form-group").removeClass("has-error") }, errorElement: "span", errorClass: "help-block", errorPlacement: function (G, T) { if ("validations_group" === T.parent().parent().attr("id")) { var A = document.getElementById("lastValidation"); G.insertAfter(A) } else T.parent(".input-group").length ? G.insertAfter(T.parent()) : G.insertAfter(T) }, submitHandler: function (G) { $("#spinner").modal({ backdrop: "static", keyboard: "false" }), ajaxFunction() } }) }, bindTdClicks = function () { $(document).on("click", "td, .plot_btn", function (G) { if ($(this).hasClass("success") || $(this).hasClass("danger")) { var T = $(this).attr("title"), A = T.replace(/[ \/]/g, ""); GV.addData(this, A) } else $(this).hasClass("plot_btn") && GV.addData(this, "all") }) }, ajaxFunction = function () { "use strict"; $.ajax({ type: "POST", url: $("#input").attr("action"), data: $("#input").serialize(), success: function (G) { $("#results_box").show(), $("#output").html(G), GV.toggleOverviewBtn(), initTableSorter(), $("[data-toggle='tooltip']").tooltip(), $("#mainbody").css({ "background-color": "#fff" }), $("#search").css({ "background-color": "#F5F5F5" }), $("#results").css({ "border-top": "3px solid #DBDBDB" }), $("#search").css({ "margin-bottom": "0" }), $("#spinner").modal("hide") }, error: function (G, T) { var A; 500 == G.status || 400 == G.status ? (A = G.responseText, $("#results_box").show(), $("#output").html(A), $("#spinner").modal("hide")) : (A = G.responseText, $("#results_box").show(), $("#output").html("There seems to be an unidentified Error."), $("#spinner").modal("hide")) } }) }, initTableSorter = function () { "use strict"; $.tablesorter.addParser({ id: "star_scores", is: function (G) { return !1 }, format: function (G, T, A, e) { var C = $(A); return 1 === e ? C.attr("data-score") || G : G }, parsed: !1, type: "numeric" }), $("table").tablesorter({ headers: { 1: { sorter: "star_scores" } }, sortList: [[0, 0]] }) }, changeAdvParamsBtnText = function () { "use strict"; var G = document.getElementById("adv_params_btn"); '<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Show Advanced Parameters' === G.innerHTML ? (G.innerHTML = '<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Hide Advanced Parameters', $("#adv_params").collapse("show"), $.cookie("GeneValidator_adv_params_status", "open")) : (G.innerHTML = '<i class="fa fa-pencil-square-o"></i>&nbsp;&nbsp;Show Advanced Parameters', $("#adv_params").collapse("hide"), $.cookie("GeneValidator_adv_params_status", "closed")) }, examplarSequence = function (G) { "use strict"; var T = ">Insulin\nATGGCTCTCTGGATCCGGTCGCTGCCTCTCCTGGCCCTTCTTGCTCTTTCTGGCCCTGGGATCAGCCACGCAGCTGCCAACCAGCACCTCTGTGGCTCCCACTTGGTTGAGGCTCTCTACCTGGTGTGTGGGGAGCGGGGTTTCTTCTACTCCCCCAAAACACGGCGGGACGTTGAGCAGCCTCTAGTGAACGGTCCCCTGCATGGCGAGGTGGGAGAGCTGCCGTTCCAGCATGAGGAATACCAGAAAGTCAAGCGAGGCATCGTTGAGCAATGCTGTGAAAACCCGTGCTCCCTCTACCAACTGGAAAACTACTGCAACTAG\n>Insulin (with a duplication)\nATGGCTCTCTGGATCCGGTCGCTGCCTCTCCTGGCCCTTCTTGCTCTTTCTGGCCCTGGGATCAGCCACGCAGCTGCCAACCAGCACCTCTGTGGCTCCCACTTGGTTGAGGCTCTCTACCTGGTGTGTGGGGAGCGGGGTTTCTTCTACTCCCCCAAAACACGGCGGGACGTTGAGCAGCCTCTAGTGAACGGTCCCCTGCATGGCGAGGTGGGAGAGCTGCCGTTCCAGCATGAGGAATACCAGACAGCACCTCTGTGGCTCCCACTTGGTTGAGGCTCTCTACCTGGTGTGTGGGGAGCGGGGTTTCTTCTACTCCCCCAAAACACGGCGGGACGTTGAGCAGCCTCTAGTGAACGGTCCCCTGCATGGCGAGGTGGGAGAGCTGCCGTTCCAGCATGAGGAATACCAGAAAGTCAAGCGAGGCATCGTTGAGCAATGCTGTGAAAACCCGTGCTCCCTCTACCAACTGGAAAACTACTGCAACTAG", A = ">Methylmalonyl-CoA carboxyltransferase 12S \nMAENNNLKLASTMEGRVEQLAEQRQVIEAGGGERRVEKQHSQGKQTARERLNNLLDPHSFDEVGAFRKHRTTLFGMDKAVVPADGVVTGRGTILGRPVHAASQDFTVMGGSAGETQSTKVVETMEQALLTGTPFLFFYDSGGARIQEGIDSLSGYGKMFFANVKLSGVVPQIAIIAGPCAGGASYSPALTDFIIMTKKAHMFITGPQVIKSVTGEDVTADELGGAEAHMAISGNIHFVAEDDDAAELIAKKLLSFLPQNNTEEASFVNPNNDVSPNTELRDIVPIDGKKGYDVRDVIAKIVDWGDYLEVKAGYATNLVTAFARVNGRSVGIVANQPSVMSGCLDINASDKAAEFVNFCDSFNIPLVQLVDVPGFLPGVQQEYGGIIRHGAKMLYAYSEATVPKITVVLRKAYGGSYLAMCNRDLGADAVYAWPSAEIAVMGAEGAANVIFRKEIKAADDPDAMRAEKIEEYQNAFNTPYVAAARGQVDDVIDPADTRRKIASALEMYATKRQTRPAKKPWKLPLLSEEEIMADEEEKDLMIATLNKRVASLESELGSLQSDTQGVTEDVLTAISAVAAYLGNDGSAEVVHFAPSPNWVREGRRALQNHSIR\n>locus=Si_gnF\nMWFPVVLLLLVGVAVAMPDHEHAWEPQNEYQYSVFVRTLTGVDTLKQQYTGIQLKGVLVIQVKSEELLQAKYINPRYAHIHQELSNGPYSKIPEENLEYRDIPMSGKPFEIKLKHGVIRDLLFDRNVPTWEVNMLKGIVGQLQIDTQGENAIDSQSTQIPSNSEPSSATFKAMEDSVGGKCEVLYEITPLPQHVAQTRPDRVPMSSVPSKGHHYEVKKLKNYEKCQERQLYHYGMDVKMTKENMMKRNKVVSELSTTHIVITGTLKSFTIQSTEMKNEITVQPESSDSPIGTVYSITKLTLAKINKISNSWFGPLELSNVESTGNLVYIFNNPFSDSEQRRVGQPSISRNSEQENSLETKKRSFHSHSSSSSSSSSSSSEEENESVMQSKASLRNIFMAPNVPLLPYFIGFKGKTIMKSNEHNVMQLAKDLLLQIAKEIQNPSEGYENTLEKYVNLKNLIRTMDRKQYTELEQYVSQFNKATVEGENAWYTLRDAVVHAGTGPAFVTIENWLKSGQVKGEEAAELLSKIPKSVHQPTPDYIKEFFKLIKSSVVTQQEYVNVSAPLAFAELLRNNYVVPSYYPVHSFGRMTLKGNEEIDNYISYLANQLQQGYLENNTQKIQTFIFALGVTAHPKIISVFEPYLEGKLPTTKYQRMLMVAALYDLSRDIPKLVGPIFYKLYMNENEAHEVRCMAVQQFILTDPPMITLQRVAKYTNYDQSDQVNSAVKSTLNSIINTKRPEWRNLANKARSVRYLVNPKNYDTWYSKGYYIDFENWVFKGLNVKMVASNDAVLPRYVYVGLDSIFNFLRKPTFEVGYAVSSYRQVYDLINELWNSYQFEEMREKSQGSRVEKLAQELKIKSGQKNNLEGHVLFNSVYGSMVYPYDKHRIREAVAALKKLLTSDSKLKTTAFNNFEKIVSFPMEMGVPFVYSFELPVFVKSEINFKKGEPITSRSGVYETLFCNRVQKRFGFIAPFEYQNYIAGIDKNGIMRVPLKYETNIDIKQKNFALKIHPNIPQSGTSTGLTHYSVVPFTTRQNIFNLQPVSNEGNTRPVITSEIHKMTKEKGPFSIKIESDTTKKESVLEDIVTGISKSSNSNNERYMKIDTTFESKQVAKCEIQIDMTFDAVTIHGKNQQPSHKEMQHHSKLDWKPNSKERREEIVNVLSAGLKSGTVFVADVSFSLPRLQDNTYVFTVGSVRSNIDQKLRHYFYVNTNAAQEVKYELCYSQEVQYAYPTPLNFEYAINNEPKDKLKGVLRYGRTCNTGNEIVITGSSSQSPQLRDMIENSSITKQCMEEIQKGKKSVRTCNKATDVAQVRDQLNFHIDASQLSEIRQKYDQVIGLLNYTNLSQYNVQQNSETNTIVVQNPWVMVPTVQEPWYRWAIKPSESQRQSEIDVLLDEVSQPSCTLDNDKILTFDNQLYNVQLGKCKHVLLTTYPQDSHNRRNYIPESSKVAVLAKDTDNDSRNVYVWLGNLEIELKKVGNDLKVAINGQNVEIPEKGHQESNGNEIIFEIVQLPDGSLSVISEKYGITVIFDGKHVRLYANGATYRNAIRGLCGNYDSRRDNDFLTPKNCLLTKPEEFAATYAMTNENCQGPAPENKRKAEGAMCIEVPEQQQMNVISDREAGRMMTEGGNWGYHQSNRKKEHGQDSKRGHGHKKYNQKDSQEGGSNESQYRKKHNIVYRTRVVEMDDKICFTTTPVPGCLQDTRPVERVPKKYDLYCLSKNNESMDLKRRVEEGAKPDFTQKPVNKIQNFQIPVSCSAA"; "dna" === G ? document.getElementById("seq").value = T : "protein" === G && (document.getElementById("seq").value = A) }, checkType = function (G, T, A, e) { "use strict"; void 0 === T && (T = .9), void 0 === A && (A = 1e4), void 0 === e && (e = 1); var C = G.slice(e - 1, A), t = C.replace(/N/gi, ""), a = t.length, n = (t.match(/[ACG]/gi) || []).length / a, r = (t.match(/[T]/gi) || []).length / a, s = (t.match(/[U]/gi) || []).length / a, V = C.replace(/X/gi, ""), S = V.length, i = (C.match(/[ARNDCQEGHILKMFPSTWYV\*]/gi) || []).length / S; return n + r >= T || n + s >= T ? r >= s ? "dna" : s >= r ? "rna" : "dna" : i >= T ? "protein" : void 0 };
47
- // jquery.cookie.min.js
48
- !function (a) { "function" == typeof define && define.amd ? define(["jquery"], a) : "object" == typeof exports ? a(require("jquery")) : a(jQuery) }(function (a) { function c(a) { return h.raw ? a : encodeURIComponent(a) } function d(a) { return h.raw ? a : decodeURIComponent(a) } function e(a) { return c(h.json ? JSON.stringify(a) : String(a)) } function f(a) { 0 === a.indexOf('"') && (a = a.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, "\\")); try { return a = decodeURIComponent(a.replace(b, " ")), h.json ? JSON.parse(a) : a } catch (c) { } } function g(b, c) { var d = h.raw ? b : f(b); return a.isFunction(c) ? c(d) : d } var b = /\+/g, h = a.cookie = function (b, f, i) { if (void 0 !== f && !a.isFunction(f)) { if (i = a.extend({}, h.defaults, i), "number" == typeof i.expires) { var j = i.expires, k = i.expires = new Date; k.setTime(+k + 864e5 * j) } return document.cookie = [c(b), "=", e(f), i.expires ? "; expires=" + i.expires.toUTCString() : "", i.path ? "; path=" + i.path : "", i.domain ? "; domain=" + i.domain : "", i.secure ? "; secure" : ""].join("") } for (var l = b ? void 0 : {}, m = document.cookie ? document.cookie.split("; ") : [], n = 0, o = m.length; o > n; n++) { var p = m[n].split("="), q = d(p.shift()), r = p.join("="); if (b && b === q) { l = g(r, f); break } b || void 0 === (r = g(r)) || (l[q] = r) } return l }; h.defaults = {}, a.removeCookie = function (b, c) { return void 0 === a.cookie(b) ? !1 : (a.cookie(b, "", a.extend({}, c, { expires: -1 })), !a.cookie(b)) } });
49
- // jquery.validate.min.js
50
- /*! jQuery Validation Plugin - v1.13.0 - 7/1/2014
51
- * http://jqueryvalidation.org/
52
- * Copyright (c) 2014 Jörn Zaefferer; Licensed MIT */
53
- !function (a) { "function" == typeof define && define.amd ? define(["jquery"], a) : a(jQuery) }(function (a) { a.extend(a.fn, { validate: function (b) { if (!this.length) return void (b && b.debug && window.console && console.warn("Nothing selected, can't validate, returning nothing.")); var c = a.data(this[0], "validator"); return c ? c : (this.attr("novalidate", "novalidate"), c = new a.validator(b, this[0]), a.data(this[0], "validator", c), c.settings.onsubmit && (this.validateDelegate(":submit", "click", function (b) { c.settings.submitHandler && (c.submitButton = b.target), a(b.target).hasClass("cancel") && (c.cancelSubmit = !0), void 0 !== a(b.target).attr("formnovalidate") && (c.cancelSubmit = !0) }), this.submit(function (b) { function d() { var d; return c.settings.submitHandler ? (c.submitButton && (d = a("<input type='hidden'/>").attr("name", c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)), c.settings.submitHandler.call(c, c.currentForm, b), c.submitButton && d.remove(), !1) : !0 } return c.settings.debug && b.preventDefault(), c.cancelSubmit ? (c.cancelSubmit = !1, d()) : c.form() ? c.pendingRequest ? (c.formSubmitted = !0, !1) : d() : (c.focusInvalid(), !1) })), c) }, valid: function () { var b, c; return a(this[0]).is("form") ? b = this.validate().form() : (b = !0, c = a(this[0].form).validate(), this.each(function () { b = c.element(this) && b })), b }, removeAttrs: function (b) { var c = {}, d = this; return a.each(b.split(/\s/), function (a, b) { c[b] = d.attr(b), d.removeAttr(b) }), c }, rules: function (b, c) { var d, e, f, g, h, i, j = this[0]; if (b) switch (d = a.data(j.form, "validator").settings, e = d.rules, f = a.validator.staticRules(j), b) { case "add": a.extend(f, a.validator.normalizeRule(c)), delete f.messages, e[j.name] = f, c.messages && (d.messages[j.name] = a.extend(d.messages[j.name], c.messages)); break; case "remove": return c ? (i = {}, a.each(c.split(/\s/), function (b, c) { i[c] = f[c], delete f[c], "required" === c && a(j).removeAttr("aria-required") }), i) : (delete e[j.name], f) }return g = a.validator.normalizeRules(a.extend({}, a.validator.classRules(j), a.validator.attributeRules(j), a.validator.dataRules(j), a.validator.staticRules(j)), j), g.required && (h = g.required, delete g.required, g = a.extend({ required: h }, g), a(j).attr("aria-required", "true")), g.remote && (h = g.remote, delete g.remote, g = a.extend(g, { remote: h })), g } }), a.extend(a.expr[":"], { blank: function (b) { return !a.trim("" + a(b).val()) }, filled: function (b) { return !!a.trim("" + a(b).val()) }, unchecked: function (b) { return !a(b).prop("checked") } }), a.validator = function (b, c) { this.settings = a.extend(!0, {}, a.validator.defaults, b), this.currentForm = c, this.init() }, a.validator.format = function (b, c) { return 1 === arguments.length ? function () { var c = a.makeArray(arguments); return c.unshift(b), a.validator.format.apply(this, c) } : (arguments.length > 2 && c.constructor !== Array && (c = a.makeArray(arguments).slice(1)), c.constructor !== Array && (c = [c]), a.each(c, function (a, c) { b = b.replace(new RegExp("\\{" + a + "\\}", "g"), function () { return c }) }), b) }, a.extend(a.validator, { defaults: { messages: {}, groups: {}, rules: {}, errorClass: "error", validClass: "valid", errorElement: "label", focusInvalid: !0, errorContainer: a([]), errorLabelContainer: a([]), onsubmit: !0, ignore: ":hidden", ignoreTitle: !1, onfocusin: function (a) { this.lastActive = a, this.settings.focusCleanup && !this.blockFocusCleanup && (this.settings.unhighlight && this.settings.unhighlight.call(this, a, this.settings.errorClass, this.settings.validClass), this.hideThese(this.errorsFor(a))) }, onfocusout: function (a) { this.checkable(a) || !(a.name in this.submitted) && this.optional(a) || this.element(a) }, onkeyup: function (a, b) { (9 !== b.which || "" !== this.elementValue(a)) && (a.name in this.submitted || a === this.lastElement) && this.element(a) }, onclick: function (a) { a.name in this.submitted ? this.element(a) : a.parentNode.name in this.submitted && this.element(a.parentNode) }, highlight: function (b, c, d) { "radio" === b.type ? this.findByName(b.name).addClass(c).removeClass(d) : a(b).addClass(c).removeClass(d) }, unhighlight: function (b, c, d) { "radio" === b.type ? this.findByName(b.name).removeClass(c).addClass(d) : a(b).removeClass(c).addClass(d) } }, setDefaults: function (b) { a.extend(a.validator.defaults, b) }, messages: { required: "This field is required.", remote: "Please fix this field.", email: "Please enter a valid email address.", url: "Please enter a valid URL.", date: "Please enter a valid date.", dateISO: "Please enter a valid date ( ISO ).", number: "Please enter a valid number.", digits: "Please enter only digits.", creditcard: "Please enter a valid credit card number.", equalTo: "Please enter the same value again.", maxlength: a.validator.format("Please enter no more than {0} characters."), minlength: a.validator.format("Please enter at least {0} characters."), rangelength: a.validator.format("Please enter a value between {0} and {1} characters long."), range: a.validator.format("Please enter a value between {0} and {1}."), max: a.validator.format("Please enter a value less than or equal to {0}."), min: a.validator.format("Please enter a value greater than or equal to {0}.") }, autoCreateRanges: !1, prototype: { init: function () { function b(b) { var c = a.data(this[0].form, "validator"), d = "on" + b.type.replace(/^validate/, ""), e = c.settings; e[d] && !this.is(e.ignore) && e[d].call(c, this[0], b) } this.labelContainer = a(this.settings.errorLabelContainer), this.errorContext = this.labelContainer.length && this.labelContainer || a(this.currentForm), this.containers = a(this.settings.errorContainer).add(this.settings.errorLabelContainer), this.submitted = {}, this.valueCache = {}, this.pendingRequest = 0, this.pending = {}, this.invalid = {}, this.reset(); var c, d = this.groups = {}; a.each(this.settings.groups, function (b, c) { "string" == typeof c && (c = c.split(/\s/)), a.each(c, function (a, c) { d[c] = b }) }), c = this.settings.rules, a.each(c, function (b, d) { c[b] = a.validator.normalizeRule(d) }), a(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox']", "focusin focusout keyup", b).validateDelegate("select, option, [type='radio'], [type='checkbox']", "click", b), this.settings.invalidHandler && a(this.currentForm).bind("invalid-form.validate", this.settings.invalidHandler), a(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required", "true") }, form: function () { return this.checkForm(), a.extend(this.submitted, this.errorMap), this.invalid = a.extend({}, this.errorMap), this.valid() || a(this.currentForm).triggerHandler("invalid-form", [this]), this.showErrors(), this.valid() }, checkForm: function () { this.prepareForm(); for (var a = 0, b = this.currentElements = this.elements(); b[a]; a++)this.check(b[a]); return this.valid() }, element: function (b) { var c = this.clean(b), d = this.validationTargetFor(c), e = !0; return this.lastElement = d, void 0 === d ? delete this.invalid[c.name] : (this.prepareElement(d), this.currentElements = a(d), e = this.check(d) !== !1, e ? delete this.invalid[d.name] : this.invalid[d.name] = !0), a(b).attr("aria-invalid", !e), this.numberOfInvalids() || (this.toHide = this.toHide.add(this.containers)), this.showErrors(), e }, showErrors: function (b) { if (b) { a.extend(this.errorMap, b), this.errorList = []; for (var c in b) this.errorList.push({ message: b[c], element: this.findByName(c)[0] }); this.successList = a.grep(this.successList, function (a) { return !(a.name in b) }) } this.settings.showErrors ? this.settings.showErrors.call(this, this.errorMap, this.errorList) : this.defaultShowErrors() }, resetForm: function () { a.fn.resetForm && a(this.currentForm).resetForm(), this.submitted = {}, this.lastElement = null, this.prepareForm(), this.hideErrors(), this.elements().removeClass(this.settings.errorClass).removeData("previousValue").removeAttr("aria-invalid") }, numberOfInvalids: function () { return this.objectLength(this.invalid) }, objectLength: function (a) { var b, c = 0; for (b in a) c++; return c }, hideErrors: function () { this.hideThese(this.toHide) }, hideThese: function (a) { a.not(this.containers).text(""), this.addWrapper(a).hide() }, valid: function () { return 0 === this.size() }, size: function () { return this.errorList.length }, focusInvalid: function () { if (this.settings.focusInvalid) try { a(this.findLastActive() || this.errorList.length && this.errorList[0].element || []).filter(":visible").focus().trigger("focusin") } catch (b) { } }, findLastActive: function () { var b = this.lastActive; return b && 1 === a.grep(this.errorList, function (a) { return a.element.name === b.name }).length && b }, elements: function () { var b = this, c = {}; return a(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function () { return !this.name && b.settings.debug && window.console && console.error("%o has no name assigned", this), this.name in c || !b.objectLength(a(this).rules()) ? !1 : (c[this.name] = !0, !0) }) }, clean: function (b) { return a(b)[0] }, errors: function () { var b = this.settings.errorClass.split(" ").join("."); return a(this.settings.errorElement + "." + b, this.errorContext) }, reset: function () { this.successList = [], this.errorList = [], this.errorMap = {}, this.toShow = a([]), this.toHide = a([]), this.currentElements = a([]) }, prepareForm: function () { this.reset(), this.toHide = this.errors().add(this.containers) }, prepareElement: function (a) { this.reset(), this.toHide = this.errorsFor(a) }, elementValue: function (b) { var c, d = a(b), e = b.type; return "radio" === e || "checkbox" === e ? a("input[name='" + b.name + "']:checked").val() : "number" === e && "undefined" != typeof b.validity ? b.validity.badInput ? !1 : d.val() : (c = d.val(), "string" == typeof c ? c.replace(/\r/g, "") : c) }, check: function (b) { b = this.validationTargetFor(this.clean(b)); var c, d, e, f = a(b).rules(), g = a.map(f, function (a, b) { return b }).length, h = !1, i = this.elementValue(b); for (d in f) { e = { method: d, parameters: f[d] }; try { if (c = a.validator.methods[d].call(this, i, b, e.parameters), "dependency-mismatch" === c && 1 === g) { h = !0; continue } if (h = !1, "pending" === c) return void (this.toHide = this.toHide.not(this.errorsFor(b))); if (!c) return this.formatAndAdd(b, e), !1 } catch (j) { throw this.settings.debug && window.console && console.log("Exception occurred when checking element " + b.id + ", check the '" + e.method + "' method.", j), j } } if (!h) return this.objectLength(f) && this.successList.push(b), !0 }, customDataMessage: function (b, c) { return a(b).data("msg" + c.charAt(0).toUpperCase() + c.substring(1).toLowerCase()) || a(b).data("msg") }, customMessage: function (a, b) { var c = this.settings.messages[a]; return c && (c.constructor === String ? c : c[b]) }, findDefined: function () { for (var a = 0; a < arguments.length; a++)if (void 0 !== arguments[a]) return arguments[a]; return void 0 }, defaultMessage: function (b, c) { return this.findDefined(this.customMessage(b.name, c), this.customDataMessage(b, c), !this.settings.ignoreTitle && b.title || void 0, a.validator.messages[c], "<strong>Warning: No message defined for " + b.name + "</strong>") }, formatAndAdd: function (b, c) { var d = this.defaultMessage(b, c.method), e = /\$?\{(\d+)\}/g; "function" == typeof d ? d = d.call(this, c.parameters, b) : e.test(d) && (d = a.validator.format(d.replace(e, "{$1}"), c.parameters)), this.errorList.push({ message: d, element: b, method: c.method }), this.errorMap[b.name] = d, this.submitted[b.name] = d }, addWrapper: function (a) { return this.settings.wrapper && (a = a.add(a.parent(this.settings.wrapper))), a }, defaultShowErrors: function () { var a, b, c; for (a = 0; this.errorList[a]; a++)c = this.errorList[a], this.settings.highlight && this.settings.highlight.call(this, c.element, this.settings.errorClass, this.settings.validClass), this.showLabel(c.element, c.message); if (this.errorList.length && (this.toShow = this.toShow.add(this.containers)), this.settings.success) for (a = 0; this.successList[a]; a++)this.showLabel(this.successList[a]); if (this.settings.unhighlight) for (a = 0, b = this.validElements(); b[a]; a++)this.settings.unhighlight.call(this, b[a], this.settings.errorClass, this.settings.validClass); this.toHide = this.toHide.not(this.toShow), this.hideErrors(), this.addWrapper(this.toShow).show() }, validElements: function () { return this.currentElements.not(this.invalidElements()) }, invalidElements: function () { return a(this.errorList).map(function () { return this.element }) }, showLabel: function (b, c) { var d, e, f, g = this.errorsFor(b), h = this.idOrName(b), i = a(b).attr("aria-describedby"); g.length ? (g.removeClass(this.settings.validClass).addClass(this.settings.errorClass), g.html(c)) : (g = a("<" + this.settings.errorElement + ">").attr("id", h + "-error").addClass(this.settings.errorClass).html(c || ""), d = g, this.settings.wrapper && (d = g.hide().show().wrap("<" + this.settings.wrapper + "/>").parent()), this.labelContainer.length ? this.labelContainer.append(d) : this.settings.errorPlacement ? this.settings.errorPlacement(d, a(b)) : d.insertAfter(b), g.is("label") ? g.attr("for", h) : 0 === g.parents("label[for='" + h + "']").length && (f = g.attr("id"), i ? i.match(new RegExp("\b" + f + "\b")) || (i += " " + f) : i = f, a(b).attr("aria-describedby", i), e = this.groups[b.name], e && a.each(this.groups, function (b, c) { c === e && a("[name='" + b + "']", this.currentForm).attr("aria-describedby", g.attr("id")) }))), !c && this.settings.success && (g.text(""), "string" == typeof this.settings.success ? g.addClass(this.settings.success) : this.settings.success(g, b)), this.toShow = this.toShow.add(g) }, errorsFor: function (b) { var c = this.idOrName(b), d = a(b).attr("aria-describedby"), e = "label[for='" + c + "'], label[for='" + c + "'] *"; return d && (e = e + ", #" + d.replace(/\s+/g, ", #")), this.errors().filter(e) }, idOrName: function (a) { return this.groups[a.name] || (this.checkable(a) ? a.name : a.id || a.name) }, validationTargetFor: function (a) { return this.checkable(a) && (a = this.findByName(a.name).not(this.settings.ignore)[0]), a }, checkable: function (a) { return /radio|checkbox/i.test(a.type) }, findByName: function (b) { return a(this.currentForm).find("[name='" + b + "']") }, getLength: function (b, c) { switch (c.nodeName.toLowerCase()) { case "select": return a("option:selected", c).length; case "input": if (this.checkable(c)) return this.findByName(c.name).filter(":checked").length }return b.length }, depend: function (a, b) { return this.dependTypes[typeof a] ? this.dependTypes[typeof a](a, b) : !0 }, dependTypes: { "boolean": function (a) { return a }, string: function (b, c) { return !!a(b, c.form).length }, "function": function (a, b) { return a(b) } }, optional: function (b) { var c = this.elementValue(b); return !a.validator.methods.required.call(this, c, b) && "dependency-mismatch" }, startRequest: function (a) { this.pending[a.name] || (this.pendingRequest++ , this.pending[a.name] = !0) }, stopRequest: function (b, c) { this.pendingRequest-- , this.pendingRequest < 0 && (this.pendingRequest = 0), delete this.pending[b.name], c && 0 === this.pendingRequest && this.formSubmitted && this.form() ? (a(this.currentForm).submit(), this.formSubmitted = !1) : !c && 0 === this.pendingRequest && this.formSubmitted && (a(this.currentForm).triggerHandler("invalid-form", [this]), this.formSubmitted = !1) }, previousValue: function (b) { return a.data(b, "previousValue") || a.data(b, "previousValue", { old: null, valid: !0, message: this.defaultMessage(b, "remote") }) } }, classRuleSettings: { required: { required: !0 }, email: { email: !0 }, url: { url: !0 }, date: { date: !0 }, dateISO: { dateISO: !0 }, number: { number: !0 }, digits: { digits: !0 }, creditcard: { creditcard: !0 } }, addClassRules: function (b, c) { b.constructor === String ? this.classRuleSettings[b] = c : a.extend(this.classRuleSettings, b) }, classRules: function (b) { var c = {}, d = a(b).attr("class"); return d && a.each(d.split(" "), function () { this in a.validator.classRuleSettings && a.extend(c, a.validator.classRuleSettings[this]) }), c }, attributeRules: function (b) { var c, d, e = {}, f = a(b), g = b.getAttribute("type"); for (c in a.validator.methods) "required" === c ? (d = b.getAttribute(c), "" === d && (d = !0), d = !!d) : d = f.attr(c), /min|max/.test(c) && (null === g || /number|range|text/.test(g)) && (d = Number(d)), d || 0 === d ? e[c] = d : g === c && "range" !== g && (e[c] = !0); return e.maxlength && /-1|2147483647|524288/.test(e.maxlength) && delete e.maxlength, e }, dataRules: function (b) { var c, d, e = {}, f = a(b); for (c in a.validator.methods) d = f.data("rule" + c.charAt(0).toUpperCase() + c.substring(1).toLowerCase()), void 0 !== d && (e[c] = d); return e }, staticRules: function (b) { var c = {}, d = a.data(b.form, "validator"); return d.settings.rules && (c = a.validator.normalizeRule(d.settings.rules[b.name]) || {}), c }, normalizeRules: function (b, c) { return a.each(b, function (d, e) { if (e === !1) return void delete b[d]; if (e.param || e.depends) { var f = !0; switch (typeof e.depends) { case "string": f = !!a(e.depends, c.form).length; break; case "function": f = e.depends.call(c, c) }f ? b[d] = void 0 !== e.param ? e.param : !0 : delete b[d] } }), a.each(b, function (d, e) { b[d] = a.isFunction(e) ? e(c) : e }), a.each(["minlength", "maxlength"], function () { b[this] && (b[this] = Number(b[this])) }), a.each(["rangelength", "range"], function () { var c; b[this] && (a.isArray(b[this]) ? b[this] = [Number(b[this][0]), Number(b[this][1])] : "string" == typeof b[this] && (c = b[this].replace(/[\[\]]/g, "").split(/[\s,]+/), b[this] = [Number(c[0]), Number(c[1])])) }), a.validator.autoCreateRanges && (b.min && b.max && (b.range = [b.min, b.max], delete b.min, delete b.max), b.minlength && b.maxlength && (b.rangelength = [b.minlength, b.maxlength], delete b.minlength, delete b.maxlength)), b }, normalizeRule: function (b) { if ("string" == typeof b) { var c = {}; a.each(b.split(/\s/), function () { c[this] = !0 }), b = c } return b }, addMethod: function (b, c, d) { a.validator.methods[b] = c, a.validator.messages[b] = void 0 !== d ? d : a.validator.messages[b], c.length < 3 && a.validator.addClassRules(b, a.validator.normalizeRule(b)) }, methods: { required: function (b, c, d) { if (!this.depend(d, c)) return "dependency-mismatch"; if ("select" === c.nodeName.toLowerCase()) { var e = a(c).val(); return e && e.length > 0 } return this.checkable(c) ? this.getLength(b, c) > 0 : a.trim(b).length > 0 }, email: function (a, b) { return this.optional(b) || /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a) }, url: function (a, b) { return this.optional(b) || /^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a) }, date: function (a, b) { return this.optional(b) || !/Invalid|NaN/.test(new Date(a).toString()) }, dateISO: function (a, b) { return this.optional(b) || /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(a) }, number: function (a, b) { return this.optional(b) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a) }, digits: function (a, b) { return this.optional(b) || /^\d+$/.test(a) }, creditcard: function (a, b) { if (this.optional(b)) return "dependency-mismatch"; if (/[^0-9 \-]+/.test(a)) return !1; var c, d, e = 0, f = 0, g = !1; if (a = a.replace(/\D/g, ""), a.length < 13 || a.length > 19) return !1; for (c = a.length - 1; c >= 0; c--)d = a.charAt(c), f = parseInt(d, 10), g && (f *= 2) > 9 && (f -= 9), e += f, g = !g; return e % 10 === 0 }, minlength: function (b, c, d) { var e = a.isArray(b) ? b.length : this.getLength(a.trim(b), c); return this.optional(c) || e >= d }, maxlength: function (b, c, d) { var e = a.isArray(b) ? b.length : this.getLength(a.trim(b), c); return this.optional(c) || d >= e }, rangelength: function (b, c, d) { var e = a.isArray(b) ? b.length : this.getLength(a.trim(b), c); return this.optional(c) || e >= d[0] && e <= d[1] }, min: function (a, b, c) { return this.optional(b) || a >= c }, max: function (a, b, c) { return this.optional(b) || c >= a }, range: function (a, b, c) { return this.optional(b) || a >= c[0] && a <= c[1] }, equalTo: function (b, c, d) { var e = a(d); return this.settings.onfocusout && e.unbind(".validate-equalTo").bind("blur.validate-equalTo", function () { a(c).valid() }), b === e.val() }, remote: function (b, c, d) { if (this.optional(c)) return "dependency-mismatch"; var e, f, g = this.previousValue(c); return this.settings.messages[c.name] || (this.settings.messages[c.name] = {}), g.originalMessage = this.settings.messages[c.name].remote, this.settings.messages[c.name].remote = g.message, d = "string" == typeof d && { url: d } || d, g.old === b ? g.valid : (g.old = b, e = this, this.startRequest(c), f = {}, f[c.name] = b, a.ajax(a.extend(!0, { url: d, mode: "abort", port: "validate" + c.name, dataType: "json", data: f, context: e.currentForm, success: function (d) { var f, h, i, j = d === !0 || "true" === d; e.settings.messages[c.name].remote = g.originalMessage, j ? (i = e.formSubmitted, e.prepareElement(c), e.formSubmitted = i, e.successList.push(c), delete e.invalid[c.name], e.showErrors()) : (f = {}, h = d || e.defaultMessage(c, "remote"), f[c.name] = g.message = a.isFunction(h) ? h(b) : h, e.invalid[c.name] = !0, e.showErrors(f)), g.valid = j, e.stopRequest(c, j) } }, d)), "pending") } } }), a.format = function () { throw "$.format has been deprecated. Please use $.validator.format instead." }; var b, c = {}; a.ajaxPrefilter ? a.ajaxPrefilter(function (a, b, d) { var e = a.port; "abort" === a.mode && (c[e] && c[e].abort(), c[e] = d) }) : (b = a.ajax, a.ajax = function (d) { var e = ("mode" in d ? d : a.ajaxSettings).mode, f = ("port" in d ? d : a.ajaxSettings).port; return "abort" === e ? (c[f] && c[f].abort(), c[f] = b.apply(this, arguments), c[f]) : b.apply(this, arguments) }), a.extend(a.fn, { validateDelegate: function (b, c, d) { return this.bind(c, function (c) { var e = a(c.target); return e.is(b) ? d.apply(e, arguments) : void 0 }) } }) });