TokiCLI 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (368) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/CHANGELOG.md +7 -0
  4. data/README.md +56 -10
  5. data/TokiCLI.gemspec +5 -2
  6. data/lib/API/dbapi.rb +104 -67
  7. data/lib/API/helpers.rb +47 -3
  8. data/lib/TokiCLI/app.rb +88 -12
  9. data/lib/TokiCLI/version.rb +1 -1
  10. data/lib/TokiCLI/view.rb +5 -1
  11. data/lib/TokiServer/Gemfile +6 -0
  12. data/lib/TokiServer/README.md +37 -0
  13. data/lib/TokiServer/bower.json +8 -0
  14. data/lib/TokiServer/bower_components/fastclick/.bower.json +23 -0
  15. data/lib/TokiServer/bower_components/fastclick/LICENSE +22 -0
  16. data/lib/TokiServer/bower_components/fastclick/README.md +133 -0
  17. data/lib/TokiServer/bower_components/fastclick/bower.json +13 -0
  18. data/lib/TokiServer/bower_components/fastclick/lib/fastclick.js +790 -0
  19. data/lib/TokiServer/bower_components/foundation/.bower.json +30 -0
  20. data/lib/TokiServer/bower_components/foundation/bower.json +20 -0
  21. data/lib/TokiServer/bower_components/foundation/css/foundation.css +4860 -0
  22. data/lib/TokiServer/bower_components/foundation/css/normalize.css +320 -0
  23. data/lib/TokiServer/bower_components/foundation/js/foundation.js +5543 -0
  24. data/lib/TokiServer/bower_components/foundation/js/foundation.min.js +3 -0
  25. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.abide.js +299 -0
  26. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.accordion.js +59 -0
  27. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.alert.js +43 -0
  28. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.clearing.js +534 -0
  29. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.dropdown.js +311 -0
  30. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.equalizer.js +74 -0
  31. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.interchange.js +331 -0
  32. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.joyride.js +843 -0
  33. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.js +611 -0
  34. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.magellan.js +178 -0
  35. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.offcanvas.js +108 -0
  36. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.orbit.js +610 -0
  37. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.reveal.js +437 -0
  38. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.slider.js +199 -0
  39. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.tab.js +167 -0
  40. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.tooltip.js +298 -0
  41. data/lib/TokiServer/bower_components/foundation/js/foundation/foundation.topbar.js +425 -0
  42. data/lib/TokiServer/bower_components/foundation/js/vendor/fastclick.js +9 -0
  43. data/lib/TokiServer/bower_components/foundation/js/vendor/jquery.cookie.js +8 -0
  44. data/lib/TokiServer/bower_components/foundation/js/vendor/jquery.js +26 -0
  45. data/lib/TokiServer/bower_components/foundation/js/vendor/modernizr.js +8 -0
  46. data/lib/TokiServer/bower_components/foundation/js/vendor/placeholder.js +2 -0
  47. data/lib/TokiServer/bower_components/foundation/scss/foundation.scss +45 -0
  48. data/lib/TokiServer/bower_components/foundation/scss/foundation/_functions.scss +101 -0
  49. data/lib/TokiServer/bower_components/foundation/scss/foundation/_settings.scss +1289 -0
  50. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_accordion.scss +53 -0
  51. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_alert-boxes.scss +126 -0
  52. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_block-grid.scss +132 -0
  53. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_breadcrumbs.scss +127 -0
  54. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_button-groups.scss +108 -0
  55. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_buttons.scss +222 -0
  56. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_clearing.scss +247 -0
  57. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_dropdown-buttons.scss +129 -0
  58. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_dropdown.scss +248 -0
  59. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_flex-video.scss +51 -0
  60. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_forms.scss +498 -0
  61. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_global.scss +429 -0
  62. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_grid.scss +260 -0
  63. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_inline-lists.scss +57 -0
  64. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_joyride.scss +220 -0
  65. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_keystrokes.scss +61 -0
  66. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_labels.scss +104 -0
  67. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_magellan.scss +34 -0
  68. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_offcanvas.scss +355 -0
  69. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_orbit.scss +423 -0
  70. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_pagination.scss +150 -0
  71. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_panels.scss +90 -0
  72. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_pricing-tables.scss +150 -0
  73. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_progress-bars.scss +79 -0
  74. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_range-slider.scss +148 -0
  75. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_reveal-new.scss +0 -0
  76. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_reveal.scss +216 -0
  77. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_side-nav.scss +115 -0
  78. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_split-buttons.scss +191 -0
  79. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_sub-nav.scss +125 -0
  80. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_switch.scss +294 -0
  81. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_tables.scss +129 -0
  82. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_tabs.scss +109 -0
  83. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_thumbs.scss +68 -0
  84. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_tooltips.scss +140 -0
  85. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_top-bar.scss +644 -0
  86. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_type.scss +511 -0
  87. data/lib/TokiServer/bower_components/foundation/scss/foundation/components/_visibility.scss +408 -0
  88. data/lib/TokiServer/bower_components/foundation/scss/normalize.scss +425 -0
  89. data/lib/TokiServer/bower_components/jquery-placeholder/.bower.json +17 -0
  90. data/lib/TokiServer/bower_components/jquery-placeholder/.gitattributes +1 -0
  91. data/lib/TokiServer/bower_components/jquery-placeholder/.gitignore +1 -0
  92. data/lib/TokiServer/bower_components/jquery-placeholder/LICENSE-MIT.txt +20 -0
  93. data/lib/TokiServer/bower_components/jquery-placeholder/README.md +76 -0
  94. data/lib/TokiServer/bower_components/jquery-placeholder/bower.json +5 -0
  95. data/lib/TokiServer/bower_components/jquery-placeholder/demo.html +55 -0
  96. data/lib/TokiServer/bower_components/jquery-placeholder/jquery.placeholder.js +185 -0
  97. data/lib/TokiServer/bower_components/jquery-placeholder/tests/index.html +32 -0
  98. data/lib/TokiServer/bower_components/jquery-placeholder/tests/tests.js +134 -0
  99. data/lib/TokiServer/bower_components/jquery.cookie/.bower.json +28 -0
  100. data/lib/TokiServer/bower_components/jquery.cookie/jquery.cookie.js +117 -0
  101. data/lib/TokiServer/bower_components/jquery/.bower.json +37 -0
  102. data/lib/TokiServer/bower_components/jquery/MIT-LICENSE.txt +21 -0
  103. data/lib/TokiServer/bower_components/jquery/bower.json +27 -0
  104. data/lib/TokiServer/bower_components/jquery/dist/jquery.js +9190 -0
  105. data/lib/TokiServer/bower_components/jquery/dist/jquery.min.js +5 -0
  106. data/lib/TokiServer/bower_components/jquery/dist/jquery.min.map +1 -0
  107. data/lib/TokiServer/bower_components/jquery/src/ajax.js +806 -0
  108. data/lib/TokiServer/bower_components/jquery/src/ajax/jsonp.js +89 -0
  109. data/lib/TokiServer/bower_components/jquery/src/ajax/load.js +75 -0
  110. data/lib/TokiServer/bower_components/jquery/src/ajax/parseJSON.js +13 -0
  111. data/lib/TokiServer/bower_components/jquery/src/ajax/parseXML.js +28 -0
  112. data/lib/TokiServer/bower_components/jquery/src/ajax/script.js +64 -0
  113. data/lib/TokiServer/bower_components/jquery/src/ajax/var/nonce.js +5 -0
  114. data/lib/TokiServer/bower_components/jquery/src/ajax/var/rquery.js +3 -0
  115. data/lib/TokiServer/bower_components/jquery/src/ajax/xhr.js +135 -0
  116. data/lib/TokiServer/bower_components/jquery/src/attributes.js +11 -0
  117. data/lib/TokiServer/bower_components/jquery/src/attributes/attr.js +143 -0
  118. data/lib/TokiServer/bower_components/jquery/src/attributes/classes.js +158 -0
  119. data/lib/TokiServer/bower_components/jquery/src/attributes/prop.js +96 -0
  120. data/lib/TokiServer/bower_components/jquery/src/attributes/support.js +35 -0
  121. data/lib/TokiServer/bower_components/jquery/src/attributes/val.js +163 -0
  122. data/lib/TokiServer/bower_components/jquery/src/callbacks.js +205 -0
  123. data/lib/TokiServer/bower_components/jquery/src/core.js +498 -0
  124. data/lib/TokiServer/bower_components/jquery/src/core/access.js +60 -0
  125. data/lib/TokiServer/bower_components/jquery/src/core/init.js +123 -0
  126. data/lib/TokiServer/bower_components/jquery/src/core/parseHTML.js +39 -0
  127. data/lib/TokiServer/bower_components/jquery/src/core/ready.js +97 -0
  128. data/lib/TokiServer/bower_components/jquery/src/core/var/rsingleTag.js +4 -0
  129. data/lib/TokiServer/bower_components/jquery/src/css.js +451 -0
  130. data/lib/TokiServer/bower_components/jquery/src/css/addGetHookIf.js +24 -0
  131. data/lib/TokiServer/bower_components/jquery/src/css/curCSS.js +57 -0
  132. data/lib/TokiServer/bower_components/jquery/src/css/defaultDisplay.js +70 -0
  133. data/lib/TokiServer/bower_components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
  134. data/lib/TokiServer/bower_components/jquery/src/css/support.js +91 -0
  135. data/lib/TokiServer/bower_components/jquery/src/css/swap.js +28 -0
  136. data/lib/TokiServer/bower_components/jquery/src/css/var/cssExpand.js +3 -0
  137. data/lib/TokiServer/bower_components/jquery/src/css/var/getStyles.js +5 -0
  138. data/lib/TokiServer/bower_components/jquery/src/css/var/isHidden.js +13 -0
  139. data/lib/TokiServer/bower_components/jquery/src/css/var/rmargin.js +3 -0
  140. data/lib/TokiServer/bower_components/jquery/src/css/var/rnumnonpx.js +5 -0
  141. data/lib/TokiServer/bower_components/jquery/src/data.js +179 -0
  142. data/lib/TokiServer/bower_components/jquery/src/data/Data.js +181 -0
  143. data/lib/TokiServer/bower_components/jquery/src/data/accepts.js +20 -0
  144. data/lib/TokiServer/bower_components/jquery/src/data/var/data_priv.js +5 -0
  145. data/lib/TokiServer/bower_components/jquery/src/data/var/data_user.js +5 -0
  146. data/lib/TokiServer/bower_components/jquery/src/deferred.js +149 -0
  147. data/lib/TokiServer/bower_components/jquery/src/deprecated.js +13 -0
  148. data/lib/TokiServer/bower_components/jquery/src/dimensions.js +50 -0
  149. data/lib/TokiServer/bower_components/jquery/src/effects.js +649 -0
  150. data/lib/TokiServer/bower_components/jquery/src/effects/Tween.js +114 -0
  151. data/lib/TokiServer/bower_components/jquery/src/effects/animatedSelector.js +13 -0
  152. data/lib/TokiServer/bower_components/jquery/src/event.js +868 -0
  153. data/lib/TokiServer/bower_components/jquery/src/event/alias.js +39 -0
  154. data/lib/TokiServer/bower_components/jquery/src/event/support.js +9 -0
  155. data/lib/TokiServer/bower_components/jquery/src/exports/amd.js +24 -0
  156. data/lib/TokiServer/bower_components/jquery/src/exports/global.js +32 -0
  157. data/lib/TokiServer/bower_components/jquery/src/intro.js +44 -0
  158. data/lib/TokiServer/bower_components/jquery/src/jquery.js +36 -0
  159. data/lib/TokiServer/bower_components/jquery/src/manipulation.js +582 -0
  160. data/lib/TokiServer/bower_components/jquery/src/manipulation/_evalUrl.js +18 -0
  161. data/lib/TokiServer/bower_components/jquery/src/manipulation/support.js +31 -0
  162. data/lib/TokiServer/bower_components/jquery/src/manipulation/var/rcheckableType.js +3 -0
  163. data/lib/TokiServer/bower_components/jquery/src/offset.js +204 -0
  164. data/lib/TokiServer/bower_components/jquery/src/outro.js +1 -0
  165. data/lib/TokiServer/bower_components/jquery/src/queue.js +142 -0
  166. data/lib/TokiServer/bower_components/jquery/src/queue/delay.js +22 -0
  167. data/lib/TokiServer/bower_components/jquery/src/selector-native.js +172 -0
  168. data/lib/TokiServer/bower_components/jquery/src/selector-sizzle.js +14 -0
  169. data/lib/TokiServer/bower_components/jquery/src/selector.js +1 -0
  170. data/lib/TokiServer/bower_components/jquery/src/serialize.js +111 -0
  171. data/lib/TokiServer/bower_components/jquery/src/sizzle/dist/sizzle.js +2044 -0
  172. data/lib/TokiServer/bower_components/jquery/src/sizzle/dist/sizzle.min.js +3 -0
  173. data/lib/TokiServer/bower_components/jquery/src/sizzle/dist/sizzle.min.map +1 -0
  174. data/lib/TokiServer/bower_components/jquery/src/traversing.js +200 -0
  175. data/lib/TokiServer/bower_components/jquery/src/traversing/findFilter.js +100 -0
  176. data/lib/TokiServer/bower_components/jquery/src/traversing/var/rneedsContext.js +6 -0
  177. data/lib/TokiServer/bower_components/jquery/src/var/arr.js +3 -0
  178. data/lib/TokiServer/bower_components/jquery/src/var/class2type.js +4 -0
  179. data/lib/TokiServer/bower_components/jquery/src/var/concat.js +5 -0
  180. data/lib/TokiServer/bower_components/jquery/src/var/hasOwn.js +5 -0
  181. data/lib/TokiServer/bower_components/jquery/src/var/indexOf.js +5 -0
  182. data/lib/TokiServer/bower_components/jquery/src/var/pnum.js +3 -0
  183. data/lib/TokiServer/bower_components/jquery/src/var/push.js +5 -0
  184. data/lib/TokiServer/bower_components/jquery/src/var/rnotwhite.js +3 -0
  185. data/lib/TokiServer/bower_components/jquery/src/var/slice.js +5 -0
  186. data/lib/TokiServer/bower_components/jquery/src/var/strundefined.js +3 -0
  187. data/lib/TokiServer/bower_components/jquery/src/var/support.js +4 -0
  188. data/lib/TokiServer/bower_components/jquery/src/var/toString.js +5 -0
  189. data/lib/TokiServer/bower_components/jquery/src/wrap.js +78 -0
  190. data/lib/TokiServer/bower_components/modernizr/.bower.json +14 -0
  191. data/lib/TokiServer/bower_components/modernizr/.editorconfig +10 -0
  192. data/lib/TokiServer/bower_components/modernizr/.gitignore +2 -0
  193. data/lib/TokiServer/bower_components/modernizr/.travis.yml +6 -0
  194. data/lib/TokiServer/bower_components/modernizr/feature-detects/a-download.js +8 -0
  195. data/lib/TokiServer/bower_components/modernizr/feature-detects/audio-audiodata-api.js +4 -0
  196. data/lib/TokiServer/bower_components/modernizr/feature-detects/audio-webaudio-api.js +4 -0
  197. data/lib/TokiServer/bower_components/modernizr/feature-detects/battery-api.js +8 -0
  198. data/lib/TokiServer/bower_components/modernizr/feature-detects/battery-level.js +11 -0
  199. data/lib/TokiServer/bower_components/modernizr/feature-detects/blob-constructor.js +10 -0
  200. data/lib/TokiServer/bower_components/modernizr/feature-detects/canvas-todataurl-type.js +28 -0
  201. data/lib/TokiServer/bower_components/modernizr/feature-detects/contenteditable.js +9 -0
  202. data/lib/TokiServer/bower_components/modernizr/feature-detects/contentsecuritypolicy.js +10 -0
  203. data/lib/TokiServer/bower_components/modernizr/feature-detects/contextmenu.js +11 -0
  204. data/lib/TokiServer/bower_components/modernizr/feature-detects/cookies.js +15 -0
  205. data/lib/TokiServer/bower_components/modernizr/feature-detects/cors.js +3 -0
  206. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-backgroundposition-shorthand.js +19 -0
  207. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-backgroundposition-xy.js +15 -0
  208. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-backgroundrepeat.js +31 -0
  209. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-backgroundsizecover.js +10 -0
  210. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-boxsizing.js +9 -0
  211. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-calc.js +12 -0
  212. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-cubicbezierrange.js +8 -0
  213. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-displayrunin.js +18 -0
  214. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-displaytable.js +27 -0
  215. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-filters.js +7 -0
  216. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-hyphens.js +205 -0
  217. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-lastchild.js +11 -0
  218. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-mask.js +12 -0
  219. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-mediaqueries.js +3 -0
  220. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-objectfit.js +6 -0
  221. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-overflow-scrolling.js +9 -0
  222. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-pointerevents.js +25 -0
  223. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-positionsticky.js +13 -0
  224. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-regions.js +55 -0
  225. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-remunit.js +19 -0
  226. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-resize.js +8 -0
  227. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-scrollbars.js +19 -0
  228. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-shapes.js +4 -0
  229. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-subpixelfont.js +23 -0
  230. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-supports.js +6 -0
  231. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-userselect.js +10 -0
  232. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-vhunit.js +14 -0
  233. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-vmaxunit.js +14 -0
  234. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-vminunit.js +14 -0
  235. data/lib/TokiServer/bower_components/modernizr/feature-detects/css-vwunit.js +14 -0
  236. data/lib/TokiServer/bower_components/modernizr/feature-detects/custom-protocol-handler.js +10 -0
  237. data/lib/TokiServer/bower_components/modernizr/feature-detects/dart.js +6 -0
  238. data/lib/TokiServer/bower_components/modernizr/feature-detects/dataview-api.js +4 -0
  239. data/lib/TokiServer/bower_components/modernizr/feature-detects/dom-classlist.js +4 -0
  240. data/lib/TokiServer/bower_components/modernizr/feature-detects/dom-createElement-attrs.js +11 -0
  241. data/lib/TokiServer/bower_components/modernizr/feature-detects/dom-dataset.js +9 -0
  242. data/lib/TokiServer/bower_components/modernizr/feature-detects/dom-microdata.js +4 -0
  243. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-datalist.js +12 -0
  244. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-details.js +25 -0
  245. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-output.js +4 -0
  246. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-progress-meter.js +11 -0
  247. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-ruby.js +53 -0
  248. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-time.js +4 -0
  249. data/lib/TokiServer/bower_components/modernizr/feature-detects/elem-track.js +11 -0
  250. data/lib/TokiServer/bower_components/modernizr/feature-detects/emoji.js +11 -0
  251. data/lib/TokiServer/bower_components/modernizr/feature-detects/es5-strictmode.js +7 -0
  252. data/lib/TokiServer/bower_components/modernizr/feature-detects/event-deviceorientation-motion.js +11 -0
  253. data/lib/TokiServer/bower_components/modernizr/feature-detects/exif-orientation.js +32 -0
  254. data/lib/TokiServer/bower_components/modernizr/feature-detects/file-api.js +12 -0
  255. data/lib/TokiServer/bower_components/modernizr/feature-detects/file-filesystem.js +9 -0
  256. data/lib/TokiServer/bower_components/modernizr/feature-detects/forms-fileinput.js +13 -0
  257. data/lib/TokiServer/bower_components/modernizr/feature-detects/forms-formattribute.js +29 -0
  258. data/lib/TokiServer/bower_components/modernizr/feature-detects/forms-inputnumber-l10n.js +32 -0
  259. data/lib/TokiServer/bower_components/modernizr/feature-detects/forms-placeholder.js +10 -0
  260. data/lib/TokiServer/bower_components/modernizr/feature-detects/forms-speechinput.js +19 -0
  261. data/lib/TokiServer/bower_components/modernizr/feature-detects/forms-validation.js +62 -0
  262. data/lib/TokiServer/bower_components/modernizr/feature-detects/fullscreen-api.js +10 -0
  263. data/lib/TokiServer/bower_components/modernizr/feature-detects/gamepad.js +12 -0
  264. data/lib/TokiServer/bower_components/modernizr/feature-detects/getusermedia.js +5 -0
  265. data/lib/TokiServer/bower_components/modernizr/feature-detects/ie8compat.js +12 -0
  266. data/lib/TokiServer/bower_components/modernizr/feature-detects/iframe-sandbox.js +5 -0
  267. data/lib/TokiServer/bower_components/modernizr/feature-detects/iframe-seamless.js +5 -0
  268. data/lib/TokiServer/bower_components/modernizr/feature-detects/iframe-srcdoc.js +5 -0
  269. data/lib/TokiServer/bower_components/modernizr/feature-detects/img-apng.js +26 -0
  270. data/lib/TokiServer/bower_components/modernizr/feature-detects/img-webp.js +20 -0
  271. data/lib/TokiServer/bower_components/modernizr/feature-detects/json.js +7 -0
  272. data/lib/TokiServer/bower_components/modernizr/feature-detects/lists-reversed.js +6 -0
  273. data/lib/TokiServer/bower_components/modernizr/feature-detects/mathml.js +23 -0
  274. data/lib/TokiServer/bower_components/modernizr/feature-detects/network-connection.js +22 -0
  275. data/lib/TokiServer/bower_components/modernizr/feature-detects/network-eventsource.js +5 -0
  276. data/lib/TokiServer/bower_components/modernizr/feature-detects/network-xhr2.js +13 -0
  277. data/lib/TokiServer/bower_components/modernizr/feature-detects/notification.js +10 -0
  278. data/lib/TokiServer/bower_components/modernizr/feature-detects/performance.js +5 -0
  279. data/lib/TokiServer/bower_components/modernizr/feature-detects/pointerlock-api.js +4 -0
  280. data/lib/TokiServer/bower_components/modernizr/feature-detects/quota-management-api.js +11 -0
  281. data/lib/TokiServer/bower_components/modernizr/feature-detects/requestanimationframe.js +7 -0
  282. data/lib/TokiServer/bower_components/modernizr/feature-detects/script-async.js +3 -0
  283. data/lib/TokiServer/bower_components/modernizr/feature-detects/script-defer.js +3 -0
  284. data/lib/TokiServer/bower_components/modernizr/feature-detects/style-scoped.js +6 -0
  285. data/lib/TokiServer/bower_components/modernizr/feature-detects/svg-filters.js +13 -0
  286. data/lib/TokiServer/bower_components/modernizr/feature-detects/unicode.js +32 -0
  287. data/lib/TokiServer/bower_components/modernizr/feature-detects/url-data-uri.js +26 -0
  288. data/lib/TokiServer/bower_components/modernizr/feature-detects/userdata.js +7 -0
  289. data/lib/TokiServer/bower_components/modernizr/feature-detects/vibration.js +4 -0
  290. data/lib/TokiServer/bower_components/modernizr/feature-detects/web-intents.js +6 -0
  291. data/lib/TokiServer/bower_components/modernizr/feature-detects/webgl-extensions.js +42 -0
  292. data/lib/TokiServer/bower_components/modernizr/feature-detects/websockets-binary.js +20 -0
  293. data/lib/TokiServer/bower_components/modernizr/feature-detects/window-framed.js +8 -0
  294. data/lib/TokiServer/bower_components/modernizr/feature-detects/workers-blobworkers.js +66 -0
  295. data/lib/TokiServer/bower_components/modernizr/feature-detects/workers-dataworkers.js +34 -0
  296. data/lib/TokiServer/bower_components/modernizr/feature-detects/workers-sharedworkers.js +3 -0
  297. data/lib/TokiServer/bower_components/modernizr/grunt.js +69 -0
  298. data/lib/TokiServer/bower_components/modernizr/media/Modernizr 2 Logo.ai +292 -1
  299. data/lib/TokiServer/bower_components/modernizr/media/Modernizr 2 Logo.eps +0 -0
  300. data/lib/TokiServer/bower_components/modernizr/media/Modernizr 2 Logo.pdf +292 -1
  301. data/lib/TokiServer/bower_components/modernizr/media/Modernizr 2 Logo.png +0 -0
  302. data/lib/TokiServer/bower_components/modernizr/media/Modernizr 2 Logo.svg +35 -0
  303. data/lib/TokiServer/bower_components/modernizr/modernizr.js +1406 -0
  304. data/lib/TokiServer/bower_components/modernizr/readme.md +28 -0
  305. data/lib/TokiServer/bower_components/modernizr/test/basic.html +65 -0
  306. data/lib/TokiServer/bower_components/modernizr/test/caniuse.html +1451 -0
  307. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/Windsong-webfont.eot +0 -0
  308. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/Windsong-webfont.otf +0 -0
  309. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/Windsong-webfont.svg +147 -0
  310. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/Windsong-webfont.ttf +0 -0
  311. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/Windsong-webfont.woff +0 -0
  312. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/alpha.png +0 -0
  313. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/apng_test.png +0 -0
  314. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/before-after.png +0 -0
  315. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/form_validation.html +15 -0
  316. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/ga.js +43 -0
  317. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/green5x5.png +0 -0
  318. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/hashchange.html +16 -0
  319. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/jquery.min.js +18 -0
  320. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/mathml.html +120 -0
  321. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/mathml_ref.png +0 -0
  322. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/modernizr-1.7.min.js +2 -0
  323. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/png_alpha_result.png +0 -0
  324. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/pushstate.html +40 -0
  325. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/red30x30.png +0 -0
  326. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/ruby.png +0 -0
  327. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/stroked-text.png +0 -0
  328. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/style.css +168 -0
  329. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/svg-html-blur.png +0 -0
  330. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/svg-img.svg +5 -0
  331. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/svg-img.svg.1 +5 -0
  332. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/svg_blur.png +0 -0
  333. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/table.png +0 -0
  334. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/text-shadow1.png +0 -0
  335. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/text-shadow2.png +0 -0
  336. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/windsong_font.png +0 -0
  337. data/lib/TokiServer/bower_components/modernizr/test/caniuse_files/xhtml.html +14 -0
  338. data/lib/TokiServer/bower_components/modernizr/test/index.html +104 -0
  339. data/lib/TokiServer/bower_components/modernizr/test/js/basic.html +65 -0
  340. data/lib/TokiServer/bower_components/modernizr/test/js/dumpdata.js +75 -0
  341. data/lib/TokiServer/bower_components/modernizr/test/js/lib/detect-global.js +153 -0
  342. data/lib/TokiServer/bower_components/modernizr/test/js/lib/jquery-1.7b2.js +9279 -0
  343. data/lib/TokiServer/bower_components/modernizr/test/js/lib/jsonselect.js +279 -0
  344. data/lib/TokiServer/bower_components/modernizr/test/js/lib/polyfills.js +96 -0
  345. data/lib/TokiServer/bower_components/modernizr/test/js/lib/uaparser.js +215 -0
  346. data/lib/TokiServer/bower_components/modernizr/test/js/setup.js +44 -0
  347. data/lib/TokiServer/bower_components/modernizr/test/js/unit-caniuse.js +191 -0
  348. data/lib/TokiServer/bower_components/modernizr/test/js/unit.js +669 -0
  349. data/lib/TokiServer/bower_components/modernizr/test/qunit/qunit.css +231 -0
  350. data/lib/TokiServer/bower_components/modernizr/test/qunit/qunit.js +1932 -0
  351. data/lib/TokiServer/bower_components/modernizr/test/qunit/run-qunit.js +72 -0
  352. data/lib/TokiServer/config.rb +25 -0
  353. data/lib/TokiServer/humans.txt +8 -0
  354. data/lib/TokiServer/itunesicon.rb +60 -0
  355. data/lib/TokiServer/js/app.js +3 -0
  356. data/lib/TokiServer/public/stylesheets/app.css +8094 -0
  357. data/lib/TokiServer/robots.txt +4 -0
  358. data/lib/TokiServer/scss/_settings.scss +1240 -0
  359. data/lib/TokiServer/scss/app.scss +102 -0
  360. data/lib/TokiServer/tokiserver.rb +377 -0
  361. data/lib/TokiServer/views/apps_total.erb +28 -0
  362. data/lib/TokiServer/views/error.erb +25 -0
  363. data/lib/TokiServer/views/index.erb +191 -0
  364. data/lib/TokiServer/views/layout.erb +20 -0
  365. data/lib/TokiServer/views/name_log.erb +50 -0
  366. data/lib/TokiServer/views/name_split.erb +37 -0
  367. data/lib/TokiServer/views/name_total.erb +34 -0
  368. metadata +416 -4
@@ -0,0 +1,5 @@
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){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({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){M.remove(a,b)
3
+ },_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),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({attr:function(a,b,c){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))
4
+ },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}}}}}),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});
5
+ //# sourceMappingURL=jquery.min.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jquery.min.js","sources":["jquery.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","arr","slice","concat","push","indexOf","class2type","toString","hasOwn","hasOwnProperty","support","version","jQuery","selector","context","fn","init","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","toUpperCase","prototype","jquery","constructor","length","toArray","call","get","num","pushStack","elems","ret","merge","prevObject","each","callback","args","map","elem","i","apply","arguments","first","eq","last","len","j","end","sort","splice","extend","options","name","src","copy","copyIsArray","clone","target","deep","isFunction","isPlainObject","isArray","undefined","expando","Math","random","replace","isReady","error","msg","noop","obj","type","Array","isWindow","isNumeric","parseFloat","nodeType","isEmptyObject","globalEval","code","script","indirect","eval","trim","createElement","text","head","appendChild","parentNode","removeChild","camelCase","string","nodeName","toLowerCase","value","isArraylike","makeArray","results","Object","inArray","second","grep","invert","callbackInverse","matches","callbackExpect","arg","guid","proxy","tmp","now","Date","split","Sizzle","Expr","getText","isXML","tokenize","compile","select","outermostContext","sortInput","hasDuplicate","setDocument","docElem","documentIsHTML","rbuggyQSA","rbuggyMatches","contains","preferredDoc","dirruns","done","classCache","createCache","tokenCache","compilerCache","sortOrder","a","b","strundefined","MAX_NEGATIVE","pop","push_native","booleans","whitespace","characterEncoding","identifier","attributes","pseudos","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","rquickExpr","rsibling","rescape","runescape","funescape","_","escaped","escapedWhitespace","high","String","fromCharCode","childNodes","e","els","seed","match","m","groups","old","nid","newContext","newSelector","ownerDocument","exec","getElementById","id","getElementsByTagName","getElementsByClassName","qsa","test","getAttribute","setAttribute","toSelector","testContext","join","querySelectorAll","qsaError","removeAttribute","keys","cache","key","cacheLength","shift","markFunction","assert","div","addHandle","attrs","handler","attrHandle","siblingCheck","cur","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createPositionalPseudo","argument","matchIndexes","documentElement","node","hasCompare","doc","parent","defaultView","top","addEventListener","attachEvent","className","createComment","innerHTML","firstChild","getById","getElementsByName","find","filter","attrId","getAttributeNode","tag","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","unshift","expr","elements","attr","val","specified","uniqueSort","duplicates","detectDuplicates","sortStable","textContent","nodeValue","selectors","createPseudo","relative",">","dir"," ","+","~","preFilter","excess","unquoted","nodeNameSelector","pattern","operator","check","result","what","simple","forward","ofType","xml","outerCache","nodeIndex","start","useCache","lastChild","pseudo","setFilters","idx","matched","not","matcher","unmatched","has","innerText","lang","elemLang","hash","location","root","focus","activeElement","hasFocus","href","tabIndex","enabled","disabled","checked","selected","selectedIndex","empty","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","tokens","soFar","preFilters","cached","addCombinator","combinator","base","checkNonElements","doneName","oldCache","newCache","elementMatcher","matchers","multipleContexts","contexts","condense","newUnmatched","mapped","setMatcher","postFilter","postFinder","postSelector","temp","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","implicitRelative","matchContext","matchAnyContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","dirrunsUnique","token","compiled","div1","defaultValue","unique","isXMLDoc","rneedsContext","rsingleTag","risSimple","winnow","qualifier","self","is","rootjQuery","parseHTML","ready","rparentsprev","guaranteedUnique","children","contents","next","prev","until","truncate","sibling","n","targets","l","closest","pos","index","prevAll","add","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","siblings","contentDocument","reverse","rnotwhite","optionsCache","createOptions","object","flag","Callbacks","memory","fired","firing","firingStart","firingLength","firingIndex","list","stack","once","fire","data","stopOnFalse","disable","remove","lock","locked","fireWith","Deferred","func","tuples","state","promise","always","deferred","fail","then","fns","newDefer","tuple","returned","resolve","reject","progress","notify","pipe","stateString","when","subordinate","resolveValues","remaining","updateFunc","values","progressValues","notifyWith","resolveWith","progressContexts","resolveContexts","readyList","readyWait","holdReady","hold","wait","triggerHandler","off","completed","removeEventListener","readyState","setTimeout","access","chainable","emptyGet","raw","bulk","acceptData","owner","Data","defineProperty","uid","accepts","descriptor","unlock","defineProperties","set","prop","stored","camel","hasData","discard","data_priv","data_user","rbrace","rmultiDash","dataAttr","parseJSON","removeData","_data","_removeData","camelKey","queue","dequeue","startLength","hooks","_queueHooks","stop","setter","clearQueue","count","defer","pnum","source","cssExpand","isHidden","el","css","rcheckableType","fragment","createDocumentFragment","checkClone","cloneNode","noCloneChecked","focusinBubbles","rkeyEvent","rmouseEvent","rfocusMorph","rtypenamespace","returnTrue","returnFalse","safeActiveElement","err","event","types","handleObjIn","eventHandle","events","t","handleObj","special","handlers","namespaces","origType","elemData","handle","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","trigger","onlyHandlers","bubbleType","ontype","eventPath","Event","isTrigger","namespace_re","noBubble","parentWindow","isPropagationStopped","preventDefault","isDefaultPrevented","_default","fix","handlerQueue","delegateTarget","preDispatch","currentTarget","isImmediatePropagationStopped","stopPropagation","postDispatch","sel","props","fixHooks","keyHooks","original","which","charCode","keyCode","mouseHooks","eventDoc","body","pageX","clientX","scrollLeft","clientLeft","pageY","clientY","scrollTop","clientTop","originalEvent","fixHook","load","blur","click","beforeunload","returnValue","simulate","bubble","isSimulated","defaultPrevented","timeStamp","stopImmediatePropagation","mouseenter","mouseleave","pointerenter","pointerleave","orig","related","relatedTarget","attaches","on","one","origFn","rxhtmlTag","rtagName","rhtml","rnoInnerhtml","rchecked","rscriptType","rscriptTypeMasked","rcleanScript","wrapMap","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","manipulationTarget","content","disableScript","restoreScript","setGlobalEval","refElements","cloneCopyEvent","dest","pdataOld","pdataCur","udataOld","udataCur","getAll","fixInput","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","buildFragment","scripts","selection","wrap","nodes","createTextNode","cleanData","append","domManip","prepend","insertBefore","before","after","keepData","html","replaceWith","replaceChild","detach","hasScripts","iNoClone","_evalUrl","appendTo","prependTo","insertAfter","replaceAll","insert","iframe","elemdisplay","actualDisplay","style","display","getDefaultComputedStyle","defaultDisplay","write","close","rmargin","rnumnonpx","getStyles","getComputedStyle","curCSS","computed","width","minWidth","maxWidth","getPropertyValue","addGetHookIf","conditionFn","hookFn","pixelPositionVal","boxSizingReliableVal","container","backgroundClip","clearCloneStyle","cssText","computePixelPositionAndBoxSizingReliable","divStyle","pixelPosition","boxSizingReliable","reliableMarginRight","marginDiv","marginRight","swap","rdisplayswap","rnumsplit","rrelNum","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","cssPrefixes","vendorPropName","capName","origName","setPositiveNumber","subtract","max","augmentWidthOrHeight","extra","isBorderBox","styles","getWidthOrHeight","valueIsBorderBox","offsetWidth","offsetHeight","showHide","show","hidden","cssHooks","opacity","cssNumber","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","cssProps","float","margin","padding","border","prefix","suffix","expand","expanded","parts","hide","toggle","Tween","easing","unit","propHooks","run","percent","eased","duration","step","tween","fx","linear","p","swing","cos","PI","fxNow","timerId","rfxtypes","rfxnum","rrun","animationPrefilters","defaultPrefilter","tweeners","*","createTween","scale","maxIterations","createFxNow","genFx","includeWidth","height","animation","collection","opts","oldfire","checkDisplay","anim","dataShow","unqueued","overflow","overflowX","overflowY","propFilter","specialEasing","Animation","properties","stopped","tick","currentTime","startTime","tweens","originalProperties","originalOptions","gotoEnd","rejectWith","timer","complete","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","interval","setInterval","clearInterval","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","optDisabled","radioValue","nodeHook","boolHook","removeAttr","nType","attrHooks","propName","attrNames","propFix","getter","rfocusable","removeProp","for","class","notxml","hasAttribute","rclass","addClass","classes","clazz","finalValue","proceed","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","hover","fnOver","fnOut","bind","unbind","delegate","undelegate","nonce","rquery","JSON","parse","parseXML","DOMParser","parseFromString","ajaxLocParts","ajaxLocation","rhash","rts","rheaders","rlocalProtocol","rnoContent","rprotocol","rurl","prefilters","transports","allTypes","addToPrefiltersOrTransports","structure","dataTypeExpression","dataType","dataTypes","inspectPrefiltersOrTransports","jqXHR","inspected","seekingTransport","inspect","prefilterOrFactory","dataTypeOrTransport","ajaxExtend","flatOptions","ajaxSettings","ajaxHandleResponses","s","responses","ct","finalDataType","firstDataType","mimeType","getResponseHeader","converters","ajaxConvert","response","isSuccess","conv2","current","conv","responseFields","dataFilter","active","lastModified","etag","url","isLocal","processData","async","contentType","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","transport","cacheURL","responseHeadersString","responseHeaders","timeoutTimer","fireGlobals","callbackContext","globalEventContext","completeDeferred","statusCode","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","lname","overrideMimeType","status","abort","statusText","finalText","success","method","crossDomain","param","traditional","hasContent","ifModified","headers","beforeSend","send","nativeStatusText","modified","getJSON","getScript","throws","wrapAll","firstElementChild","wrapInner","unwrap","visible","r20","rbracket","rCRLF","rsubmitterTypes","rsubmittable","buildParams","v","encodeURIComponent","serialize","serializeArray","xhr","XMLHttpRequest","xhrId","xhrCallbacks","xhrSuccessStatus",1223,"xhrSupported","ActiveXObject","cors","open","username","xhrFields","onload","onerror","responseText","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","keepScripts","parsed","_load","params","animated","getWindow","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","left","using","win","box","getBoundingClientRect","pageYOffset","pageXOffset","offsetParent","parentOffset","scrollTo","Height","Width","defaultExtra","funcName","size","andSelf","define","amd","_jQuery","_$","$","noConflict"],"mappings":"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"}
@@ -0,0 +1,806 @@
1
+ define([
2
+ "./core",
3
+ "./var/rnotwhite",
4
+ "./ajax/var/nonce",
5
+ "./ajax/var/rquery",
6
+ "./core/init",
7
+ "./ajax/parseJSON",
8
+ "./ajax/parseXML",
9
+ "./deferred"
10
+ ], function( jQuery, rnotwhite, nonce, rquery ) {
11
+
12
+ var
13
+ // Document location
14
+ ajaxLocParts,
15
+ ajaxLocation,
16
+
17
+ rhash = /#.*$/,
18
+ rts = /([?&])_=[^&]*/,
19
+ rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,
20
+ // #7653, #8125, #8152: local protocol detection
21
+ rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
22
+ rnoContent = /^(?:GET|HEAD)$/,
23
+ rprotocol = /^\/\//,
24
+ rurl = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
25
+
26
+ /* Prefilters
27
+ * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
28
+ * 2) These are called:
29
+ * - BEFORE asking for a transport
30
+ * - AFTER param serialization (s.data is a string if s.processData is true)
31
+ * 3) key is the dataType
32
+ * 4) the catchall symbol "*" can be used
33
+ * 5) execution will start with transport dataType and THEN continue down to "*" if needed
34
+ */
35
+ prefilters = {},
36
+
37
+ /* Transports bindings
38
+ * 1) key is the dataType
39
+ * 2) the catchall symbol "*" can be used
40
+ * 3) selection will start with transport dataType and THEN go to "*" if needed
41
+ */
42
+ transports = {},
43
+
44
+ // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
45
+ allTypes = "*/".concat("*");
46
+
47
+ // #8138, IE may throw an exception when accessing
48
+ // a field from window.location if document.domain has been set
49
+ try {
50
+ ajaxLocation = location.href;
51
+ } catch( e ) {
52
+ // Use the href attribute of an A element
53
+ // since IE will modify it given document.location
54
+ ajaxLocation = document.createElement( "a" );
55
+ ajaxLocation.href = "";
56
+ ajaxLocation = ajaxLocation.href;
57
+ }
58
+
59
+ // Segment location into parts
60
+ ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];
61
+
62
+ // Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
63
+ function addToPrefiltersOrTransports( structure ) {
64
+
65
+ // dataTypeExpression is optional and defaults to "*"
66
+ return function( dataTypeExpression, func ) {
67
+
68
+ if ( typeof dataTypeExpression !== "string" ) {
69
+ func = dataTypeExpression;
70
+ dataTypeExpression = "*";
71
+ }
72
+
73
+ var dataType,
74
+ i = 0,
75
+ dataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || [];
76
+
77
+ if ( jQuery.isFunction( func ) ) {
78
+ // For each dataType in the dataTypeExpression
79
+ while ( (dataType = dataTypes[i++]) ) {
80
+ // Prepend if requested
81
+ if ( dataType[0] === "+" ) {
82
+ dataType = dataType.slice( 1 ) || "*";
83
+ (structure[ dataType ] = structure[ dataType ] || []).unshift( func );
84
+
85
+ // Otherwise append
86
+ } else {
87
+ (structure[ dataType ] = structure[ dataType ] || []).push( func );
88
+ }
89
+ }
90
+ }
91
+ };
92
+ }
93
+
94
+ // Base inspection function for prefilters and transports
95
+ function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {
96
+
97
+ var inspected = {},
98
+ seekingTransport = ( structure === transports );
99
+
100
+ function inspect( dataType ) {
101
+ var selected;
102
+ inspected[ dataType ] = true;
103
+ jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
104
+ var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
105
+ if ( typeof dataTypeOrTransport === "string" && !seekingTransport && !inspected[ dataTypeOrTransport ] ) {
106
+ options.dataTypes.unshift( dataTypeOrTransport );
107
+ inspect( dataTypeOrTransport );
108
+ return false;
109
+ } else if ( seekingTransport ) {
110
+ return !( selected = dataTypeOrTransport );
111
+ }
112
+ });
113
+ return selected;
114
+ }
115
+
116
+ return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
117
+ }
118
+
119
+ // A special extend for ajax options
120
+ // that takes "flat" options (not to be deep extended)
121
+ // Fixes #9887
122
+ function ajaxExtend( target, src ) {
123
+ var key, deep,
124
+ flatOptions = jQuery.ajaxSettings.flatOptions || {};
125
+
126
+ for ( key in src ) {
127
+ if ( src[ key ] !== undefined ) {
128
+ ( flatOptions[ key ] ? target : ( deep || (deep = {}) ) )[ key ] = src[ key ];
129
+ }
130
+ }
131
+ if ( deep ) {
132
+ jQuery.extend( true, target, deep );
133
+ }
134
+
135
+ return target;
136
+ }
137
+
138
+ /* Handles responses to an ajax request:
139
+ * - finds the right dataType (mediates between content-type and expected dataType)
140
+ * - returns the corresponding response
141
+ */
142
+ function ajaxHandleResponses( s, jqXHR, responses ) {
143
+
144
+ var ct, type, finalDataType, firstDataType,
145
+ contents = s.contents,
146
+ dataTypes = s.dataTypes;
147
+
148
+ // Remove auto dataType and get content-type in the process
149
+ while ( dataTypes[ 0 ] === "*" ) {
150
+ dataTypes.shift();
151
+ if ( ct === undefined ) {
152
+ ct = s.mimeType || jqXHR.getResponseHeader("Content-Type");
153
+ }
154
+ }
155
+
156
+ // Check if we're dealing with a known content-type
157
+ if ( ct ) {
158
+ for ( type in contents ) {
159
+ if ( contents[ type ] && contents[ type ].test( ct ) ) {
160
+ dataTypes.unshift( type );
161
+ break;
162
+ }
163
+ }
164
+ }
165
+
166
+ // Check to see if we have a response for the expected dataType
167
+ if ( dataTypes[ 0 ] in responses ) {
168
+ finalDataType = dataTypes[ 0 ];
169
+ } else {
170
+ // Try convertible dataTypes
171
+ for ( type in responses ) {
172
+ if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
173
+ finalDataType = type;
174
+ break;
175
+ }
176
+ if ( !firstDataType ) {
177
+ firstDataType = type;
178
+ }
179
+ }
180
+ // Or just use first one
181
+ finalDataType = finalDataType || firstDataType;
182
+ }
183
+
184
+ // If we found a dataType
185
+ // We add the dataType to the list if needed
186
+ // and return the corresponding response
187
+ if ( finalDataType ) {
188
+ if ( finalDataType !== dataTypes[ 0 ] ) {
189
+ dataTypes.unshift( finalDataType );
190
+ }
191
+ return responses[ finalDataType ];
192
+ }
193
+ }
194
+
195
+ /* Chain conversions given the request and the original response
196
+ * Also sets the responseXXX fields on the jqXHR instance
197
+ */
198
+ function ajaxConvert( s, response, jqXHR, isSuccess ) {
199
+ var conv2, current, conv, tmp, prev,
200
+ converters = {},
201
+ // Work with a copy of dataTypes in case we need to modify it for conversion
202
+ dataTypes = s.dataTypes.slice();
203
+
204
+ // Create converters map with lowercased keys
205
+ if ( dataTypes[ 1 ] ) {
206
+ for ( conv in s.converters ) {
207
+ converters[ conv.toLowerCase() ] = s.converters[ conv ];
208
+ }
209
+ }
210
+
211
+ current = dataTypes.shift();
212
+
213
+ // Convert to each sequential dataType
214
+ while ( current ) {
215
+
216
+ if ( s.responseFields[ current ] ) {
217
+ jqXHR[ s.responseFields[ current ] ] = response;
218
+ }
219
+
220
+ // Apply the dataFilter if provided
221
+ if ( !prev && isSuccess && s.dataFilter ) {
222
+ response = s.dataFilter( response, s.dataType );
223
+ }
224
+
225
+ prev = current;
226
+ current = dataTypes.shift();
227
+
228
+ if ( current ) {
229
+
230
+ // There's only work to do if current dataType is non-auto
231
+ if ( current === "*" ) {
232
+
233
+ current = prev;
234
+
235
+ // Convert response if prev dataType is non-auto and differs from current
236
+ } else if ( prev !== "*" && prev !== current ) {
237
+
238
+ // Seek a direct converter
239
+ conv = converters[ prev + " " + current ] || converters[ "* " + current ];
240
+
241
+ // If none found, seek a pair
242
+ if ( !conv ) {
243
+ for ( conv2 in converters ) {
244
+
245
+ // If conv2 outputs current
246
+ tmp = conv2.split( " " );
247
+ if ( tmp[ 1 ] === current ) {
248
+
249
+ // If prev can be converted to accepted input
250
+ conv = converters[ prev + " " + tmp[ 0 ] ] ||
251
+ converters[ "* " + tmp[ 0 ] ];
252
+ if ( conv ) {
253
+ // Condense equivalence converters
254
+ if ( conv === true ) {
255
+ conv = converters[ conv2 ];
256
+
257
+ // Otherwise, insert the intermediate dataType
258
+ } else if ( converters[ conv2 ] !== true ) {
259
+ current = tmp[ 0 ];
260
+ dataTypes.unshift( tmp[ 1 ] );
261
+ }
262
+ break;
263
+ }
264
+ }
265
+ }
266
+ }
267
+
268
+ // Apply converter (if not an equivalence)
269
+ if ( conv !== true ) {
270
+
271
+ // Unless errors are allowed to bubble, catch and return them
272
+ if ( conv && s[ "throws" ] ) {
273
+ response = conv( response );
274
+ } else {
275
+ try {
276
+ response = conv( response );
277
+ } catch ( e ) {
278
+ return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current };
279
+ }
280
+ }
281
+ }
282
+ }
283
+ }
284
+ }
285
+
286
+ return { state: "success", data: response };
287
+ }
288
+
289
+ jQuery.extend({
290
+
291
+ // Counter for holding the number of active queries
292
+ active: 0,
293
+
294
+ // Last-Modified header cache for next request
295
+ lastModified: {},
296
+ etag: {},
297
+
298
+ ajaxSettings: {
299
+ url: ajaxLocation,
300
+ type: "GET",
301
+ isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
302
+ global: true,
303
+ processData: true,
304
+ async: true,
305
+ contentType: "application/x-www-form-urlencoded; charset=UTF-8",
306
+ /*
307
+ timeout: 0,
308
+ data: null,
309
+ dataType: null,
310
+ username: null,
311
+ password: null,
312
+ cache: null,
313
+ throws: false,
314
+ traditional: false,
315
+ headers: {},
316
+ */
317
+
318
+ accepts: {
319
+ "*": allTypes,
320
+ text: "text/plain",
321
+ html: "text/html",
322
+ xml: "application/xml, text/xml",
323
+ json: "application/json, text/javascript"
324
+ },
325
+
326
+ contents: {
327
+ xml: /xml/,
328
+ html: /html/,
329
+ json: /json/
330
+ },
331
+
332
+ responseFields: {
333
+ xml: "responseXML",
334
+ text: "responseText",
335
+ json: "responseJSON"
336
+ },
337
+
338
+ // Data converters
339
+ // Keys separate source (or catchall "*") and destination types with a single space
340
+ converters: {
341
+
342
+ // Convert anything to text
343
+ "* text": String,
344
+
345
+ // Text to html (true = no transformation)
346
+ "text html": true,
347
+
348
+ // Evaluate text as a json expression
349
+ "text json": jQuery.parseJSON,
350
+
351
+ // Parse text as xml
352
+ "text xml": jQuery.parseXML
353
+ },
354
+
355
+ // For options that shouldn't be deep extended:
356
+ // you can add your own custom options here if
357
+ // and when you create one that shouldn't be
358
+ // deep extended (see ajaxExtend)
359
+ flatOptions: {
360
+ url: true,
361
+ context: true
362
+ }
363
+ },
364
+
365
+ // Creates a full fledged settings object into target
366
+ // with both ajaxSettings and settings fields.
367
+ // If target is omitted, writes into ajaxSettings.
368
+ ajaxSetup: function( target, settings ) {
369
+ return settings ?
370
+
371
+ // Building a settings object
372
+ ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :
373
+
374
+ // Extending ajaxSettings
375
+ ajaxExtend( jQuery.ajaxSettings, target );
376
+ },
377
+
378
+ ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
379
+ ajaxTransport: addToPrefiltersOrTransports( transports ),
380
+
381
+ // Main method
382
+ ajax: function( url, options ) {
383
+
384
+ // If url is an object, simulate pre-1.5 signature
385
+ if ( typeof url === "object" ) {
386
+ options = url;
387
+ url = undefined;
388
+ }
389
+
390
+ // Force options to be an object
391
+ options = options || {};
392
+
393
+ var transport,
394
+ // URL without anti-cache param
395
+ cacheURL,
396
+ // Response headers
397
+ responseHeadersString,
398
+ responseHeaders,
399
+ // timeout handle
400
+ timeoutTimer,
401
+ // Cross-domain detection vars
402
+ parts,
403
+ // To know if global events are to be dispatched
404
+ fireGlobals,
405
+ // Loop variable
406
+ i,
407
+ // Create the final options object
408
+ s = jQuery.ajaxSetup( {}, options ),
409
+ // Callbacks context
410
+ callbackContext = s.context || s,
411
+ // Context for global events is callbackContext if it is a DOM node or jQuery collection
412
+ globalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ?
413
+ jQuery( callbackContext ) :
414
+ jQuery.event,
415
+ // Deferreds
416
+ deferred = jQuery.Deferred(),
417
+ completeDeferred = jQuery.Callbacks("once memory"),
418
+ // Status-dependent callbacks
419
+ statusCode = s.statusCode || {},
420
+ // Headers (they are sent all at once)
421
+ requestHeaders = {},
422
+ requestHeadersNames = {},
423
+ // The jqXHR state
424
+ state = 0,
425
+ // Default abort message
426
+ strAbort = "canceled",
427
+ // Fake xhr
428
+ jqXHR = {
429
+ readyState: 0,
430
+
431
+ // Builds headers hashtable if needed
432
+ getResponseHeader: function( key ) {
433
+ var match;
434
+ if ( state === 2 ) {
435
+ if ( !responseHeaders ) {
436
+ responseHeaders = {};
437
+ while ( (match = rheaders.exec( responseHeadersString )) ) {
438
+ responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
439
+ }
440
+ }
441
+ match = responseHeaders[ key.toLowerCase() ];
442
+ }
443
+ return match == null ? null : match;
444
+ },
445
+
446
+ // Raw string
447
+ getAllResponseHeaders: function() {
448
+ return state === 2 ? responseHeadersString : null;
449
+ },
450
+
451
+ // Caches the header
452
+ setRequestHeader: function( name, value ) {
453
+ var lname = name.toLowerCase();
454
+ if ( !state ) {
455
+ name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;
456
+ requestHeaders[ name ] = value;
457
+ }
458
+ return this;
459
+ },
460
+
461
+ // Overrides response content-type header
462
+ overrideMimeType: function( type ) {
463
+ if ( !state ) {
464
+ s.mimeType = type;
465
+ }
466
+ return this;
467
+ },
468
+
469
+ // Status-dependent callbacks
470
+ statusCode: function( map ) {
471
+ var code;
472
+ if ( map ) {
473
+ if ( state < 2 ) {
474
+ for ( code in map ) {
475
+ // Lazy-add the new callback in a way that preserves old ones
476
+ statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
477
+ }
478
+ } else {
479
+ // Execute the appropriate callbacks
480
+ jqXHR.always( map[ jqXHR.status ] );
481
+ }
482
+ }
483
+ return this;
484
+ },
485
+
486
+ // Cancel the request
487
+ abort: function( statusText ) {
488
+ var finalText = statusText || strAbort;
489
+ if ( transport ) {
490
+ transport.abort( finalText );
491
+ }
492
+ done( 0, finalText );
493
+ return this;
494
+ }
495
+ };
496
+
497
+ // Attach deferreds
498
+ deferred.promise( jqXHR ).complete = completeDeferred.add;
499
+ jqXHR.success = jqXHR.done;
500
+ jqXHR.error = jqXHR.fail;
501
+
502
+ // Remove hash character (#7531: and string promotion)
503
+ // Add protocol if not provided (prefilters might expect it)
504
+ // Handle falsy url in the settings object (#10093: consistency with old signature)
505
+ // We also use the url parameter if available
506
+ s.url = ( ( url || s.url || ajaxLocation ) + "" ).replace( rhash, "" )
507
+ .replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
508
+
509
+ // Alias method option to type as per ticket #12004
510
+ s.type = options.method || options.type || s.method || s.type;
511
+
512
+ // Extract dataTypes list
513
+ s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().match( rnotwhite ) || [ "" ];
514
+
515
+ // A cross-domain request is in order when we have a protocol:host:port mismatch
516
+ if ( s.crossDomain == null ) {
517
+ parts = rurl.exec( s.url.toLowerCase() );
518
+ s.crossDomain = !!( parts &&
519
+ ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||
520
+ ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? "80" : "443" ) ) !==
521
+ ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? "80" : "443" ) ) )
522
+ );
523
+ }
524
+
525
+ // Convert data if not already a string
526
+ if ( s.data && s.processData && typeof s.data !== "string" ) {
527
+ s.data = jQuery.param( s.data, s.traditional );
528
+ }
529
+
530
+ // Apply prefilters
531
+ inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
532
+
533
+ // If request was aborted inside a prefilter, stop there
534
+ if ( state === 2 ) {
535
+ return jqXHR;
536
+ }
537
+
538
+ // We can fire global events as of now if asked to
539
+ fireGlobals = s.global;
540
+
541
+ // Watch for a new set of requests
542
+ if ( fireGlobals && jQuery.active++ === 0 ) {
543
+ jQuery.event.trigger("ajaxStart");
544
+ }
545
+
546
+ // Uppercase the type
547
+ s.type = s.type.toUpperCase();
548
+
549
+ // Determine if request has content
550
+ s.hasContent = !rnoContent.test( s.type );
551
+
552
+ // Save the URL in case we're toying with the If-Modified-Since
553
+ // and/or If-None-Match header later on
554
+ cacheURL = s.url;
555
+
556
+ // More options handling for requests with no content
557
+ if ( !s.hasContent ) {
558
+
559
+ // If data is available, append data to url
560
+ if ( s.data ) {
561
+ cacheURL = ( s.url += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data );
562
+ // #9682: remove data so that it's not used in an eventual retry
563
+ delete s.data;
564
+ }
565
+
566
+ // Add anti-cache in url if needed
567
+ if ( s.cache === false ) {
568
+ s.url = rts.test( cacheURL ) ?
569
+
570
+ // If there is already a '_' parameter, set its value
571
+ cacheURL.replace( rts, "$1_=" + nonce++ ) :
572
+
573
+ // Otherwise add one to the end
574
+ cacheURL + ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + nonce++;
575
+ }
576
+ }
577
+
578
+ // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
579
+ if ( s.ifModified ) {
580
+ if ( jQuery.lastModified[ cacheURL ] ) {
581
+ jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
582
+ }
583
+ if ( jQuery.etag[ cacheURL ] ) {
584
+ jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
585
+ }
586
+ }
587
+
588
+ // Set the correct header, if data is being sent
589
+ if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
590
+ jqXHR.setRequestHeader( "Content-Type", s.contentType );
591
+ }
592
+
593
+ // Set the Accepts header for the server, depending on the dataType
594
+ jqXHR.setRequestHeader(
595
+ "Accept",
596
+ s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
597
+ s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
598
+ s.accepts[ "*" ]
599
+ );
600
+
601
+ // Check for headers option
602
+ for ( i in s.headers ) {
603
+ jqXHR.setRequestHeader( i, s.headers[ i ] );
604
+ }
605
+
606
+ // Allow custom headers/mimetypes and early abort
607
+ if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
608
+ // Abort if not done already and return
609
+ return jqXHR.abort();
610
+ }
611
+
612
+ // aborting is no longer a cancellation
613
+ strAbort = "abort";
614
+
615
+ // Install callbacks on deferreds
616
+ for ( i in { success: 1, error: 1, complete: 1 } ) {
617
+ jqXHR[ i ]( s[ i ] );
618
+ }
619
+
620
+ // Get transport
621
+ transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
622
+
623
+ // If no transport, we auto-abort
624
+ if ( !transport ) {
625
+ done( -1, "No Transport" );
626
+ } else {
627
+ jqXHR.readyState = 1;
628
+
629
+ // Send global event
630
+ if ( fireGlobals ) {
631
+ globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
632
+ }
633
+ // Timeout
634
+ if ( s.async && s.timeout > 0 ) {
635
+ timeoutTimer = setTimeout(function() {
636
+ jqXHR.abort("timeout");
637
+ }, s.timeout );
638
+ }
639
+
640
+ try {
641
+ state = 1;
642
+ transport.send( requestHeaders, done );
643
+ } catch ( e ) {
644
+ // Propagate exception as error if not done
645
+ if ( state < 2 ) {
646
+ done( -1, e );
647
+ // Simply rethrow otherwise
648
+ } else {
649
+ throw e;
650
+ }
651
+ }
652
+ }
653
+
654
+ // Callback for when everything is done
655
+ function done( status, nativeStatusText, responses, headers ) {
656
+ var isSuccess, success, error, response, modified,
657
+ statusText = nativeStatusText;
658
+
659
+ // Called once
660
+ if ( state === 2 ) {
661
+ return;
662
+ }
663
+
664
+ // State is "done" now
665
+ state = 2;
666
+
667
+ // Clear timeout if it exists
668
+ if ( timeoutTimer ) {
669
+ clearTimeout( timeoutTimer );
670
+ }
671
+
672
+ // Dereference transport for early garbage collection
673
+ // (no matter how long the jqXHR object will be used)
674
+ transport = undefined;
675
+
676
+ // Cache response headers
677
+ responseHeadersString = headers || "";
678
+
679
+ // Set readyState
680
+ jqXHR.readyState = status > 0 ? 4 : 0;
681
+
682
+ // Determine if successful
683
+ isSuccess = status >= 200 && status < 300 || status === 304;
684
+
685
+ // Get response data
686
+ if ( responses ) {
687
+ response = ajaxHandleResponses( s, jqXHR, responses );
688
+ }
689
+
690
+ // Convert no matter what (that way responseXXX fields are always set)
691
+ response = ajaxConvert( s, response, jqXHR, isSuccess );
692
+
693
+ // If successful, handle type chaining
694
+ if ( isSuccess ) {
695
+
696
+ // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
697
+ if ( s.ifModified ) {
698
+ modified = jqXHR.getResponseHeader("Last-Modified");
699
+ if ( modified ) {
700
+ jQuery.lastModified[ cacheURL ] = modified;
701
+ }
702
+ modified = jqXHR.getResponseHeader("etag");
703
+ if ( modified ) {
704
+ jQuery.etag[ cacheURL ] = modified;
705
+ }
706
+ }
707
+
708
+ // if no content
709
+ if ( status === 204 || s.type === "HEAD" ) {
710
+ statusText = "nocontent";
711
+
712
+ // if not modified
713
+ } else if ( status === 304 ) {
714
+ statusText = "notmodified";
715
+
716
+ // If we have data, let's convert it
717
+ } else {
718
+ statusText = response.state;
719
+ success = response.data;
720
+ error = response.error;
721
+ isSuccess = !error;
722
+ }
723
+ } else {
724
+ // We extract error from statusText
725
+ // then normalize statusText and status for non-aborts
726
+ error = statusText;
727
+ if ( status || !statusText ) {
728
+ statusText = "error";
729
+ if ( status < 0 ) {
730
+ status = 0;
731
+ }
732
+ }
733
+ }
734
+
735
+ // Set data for the fake xhr object
736
+ jqXHR.status = status;
737
+ jqXHR.statusText = ( nativeStatusText || statusText ) + "";
738
+
739
+ // Success/Error
740
+ if ( isSuccess ) {
741
+ deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
742
+ } else {
743
+ deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
744
+ }
745
+
746
+ // Status-dependent callbacks
747
+ jqXHR.statusCode( statusCode );
748
+ statusCode = undefined;
749
+
750
+ if ( fireGlobals ) {
751
+ globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
752
+ [ jqXHR, s, isSuccess ? success : error ] );
753
+ }
754
+
755
+ // Complete
756
+ completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
757
+
758
+ if ( fireGlobals ) {
759
+ globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
760
+ // Handle the global AJAX counter
761
+ if ( !( --jQuery.active ) ) {
762
+ jQuery.event.trigger("ajaxStop");
763
+ }
764
+ }
765
+ }
766
+
767
+ return jqXHR;
768
+ },
769
+
770
+ getJSON: function( url, data, callback ) {
771
+ return jQuery.get( url, data, callback, "json" );
772
+ },
773
+
774
+ getScript: function( url, callback ) {
775
+ return jQuery.get( url, undefined, callback, "script" );
776
+ }
777
+ });
778
+
779
+ jQuery.each( [ "get", "post" ], function( i, method ) {
780
+ jQuery[ method ] = function( url, data, callback, type ) {
781
+ // shift arguments if data argument was omitted
782
+ if ( jQuery.isFunction( data ) ) {
783
+ type = type || callback;
784
+ callback = data;
785
+ data = undefined;
786
+ }
787
+
788
+ return jQuery.ajax({
789
+ url: url,
790
+ type: method,
791
+ dataType: type,
792
+ data: data,
793
+ success: callback
794
+ });
795
+ };
796
+ });
797
+
798
+ // Attach a bunch of functions for handling common AJAX events
799
+ jQuery.each( [ "ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend" ], function( i, type ) {
800
+ jQuery.fn[ type ] = function( fn ) {
801
+ return this.on( type, fn );
802
+ };
803
+ });
804
+
805
+ return jQuery;
806
+ });